17.4.2. 查询参数(21 参数)
Name | 描述 | 默认 | 类型 |
---|---|---|---|
dataSetIndex (common) | 控制 CamelDataSetIndex 标头的行为。对于 Consumers: - off = header 不会被设置 - strict/lenient = header 将被设置 For Producers: - off = 不会验证标头值,如果它不存在 = 严格 = 必须存在,并将验证 = lenient = 标题值将会被验证(如果不存在)并不会设置它。 枚举值:
| lenient | 字符串 |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由 Error Handler,这意味着在消费者尝试获取传入的消息时发生任何异常,或像这样一样处理,消息现在将被作为消息进行处理,并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 处理异常,该处理程序将记录在 WARN 或 ERROR 级别并忽略。 | false | 布尔值 |
initialDelay (consumer) | 开始发送消息前等待的时间段(forllis)。 | 1000 | long |
minRate (consumer) | 等待 DataSet 至少包含这条消息。 | 0 | int |
preloadSize (consumer) | 在路由完成初始化前,设置应预加载(分发)的消息数量。 | 0 | long |
produceDelay (consumer) | 允许指定延迟,这会导致在消费者发送消息时(模拟缓慢处理)时延迟。 | 3 | long |
exceptionHandler (consumer (advanced)) | 要让消费者使用自定义 ExceptionHandler。请注意,如果选项 bridgeErrorHandler 已启用,则不会使用这个选项。默认情况下,消费者处理异常,该消费者在 WARN 或 ERROR 级别上记录并忽略。 | ExceptionHandler | |
exchangePattern (consumer (advanced)) | 在消费者创建交换时设置交换模式。 枚举值:
| ExchangePattern | |
assertPeriod (producer) | 设置一个宽限期,在模拟端点将重新排序后,以确保预消除断言仍然有效。例如,这使用 断言完全到达多个消息。例如,如果 expectedMessageCount(int)被设置为 5,则当 5 个或更多消息到达时满足断言。要确保正好 5 个消息到达,您需要等待一些期限以确保没有进一步的消息到达。此方法可用于以下目的:默认情况下禁用这个周期。 | long | |
consumeDelay (producer) | 允许指定延迟,这会导致在制作者使用消息时(模拟缓慢处理)时会延迟。 | 0 | long |
expectedCount (producer) | 指定此端点应收到的预期消息交换数量。注意:如果您想要预期是 0 信息,那么在测试开始时,需要设置 0 匹配,以便让测试在一定时间运行期间,以确保没有消息被到达;对于使用 setAssertPeriod(long)。另一种方法是使用 NotifyBuilder,并在在模拟器上调用 assertIsSatisfied()方法前,使用通知程序来知道 Camel 需要路由某些信息。这可让您使用固定的断言周期来加快测试时间。如果您想要断言有 n 条消息到达这个模拟端点,则还需要看到 setAssertPeriod(long)方法了解更多详情。 | -1 | int |
failFast (producer) | 设置 assertIsSatisfied()是否应该在第一次检测到失败时快速失败,同时在执行预期验证前等待所有预期消息到达。默认为 true。设置为 false,以在 Camel 2.x 中使用行为。 | false | 布尔值 |
lazyStartProducer (producer) | 制作者是否应该启动 lazy(在第一个消息上)。通过启动 lazy,您可以使用它来允许 CamelContext 和路由在启动期间启动,否则在启动期间出现问题,并导致路由启动失败。通过将这个启动延迟到 lazy 后,可以在通过 Camel 的路由错误处理程序路由消息期间处理启动失败。注意在处理第一个消息时,创建并启动制作者可能花费较少的时间,从而延长处理的总处理时间。 | false | 布尔值 |
log (producer) | 要在模拟收到传入消息时打开日志记录。这将只在 INFO 级别记录传入的消息。如果更详细的日志记录,然后将 org.apache.camel.component.mock.MockEndpoint 类的日志记录器设置为 DEBUG 级别。 | false | 布尔值 |
reportGroup (producer) | 用于根据大小组打开吞吐量日志的数字。 | int | |
resultMinimumWaitTime (producer) | 设定断言IsSatised()最少的预期时间(在 millis)将等待等待直至满足为止。 | long | |
resultWaitTime (producer) | 设置断言IsSatisfied()最多的时间,直到满足为止。 | long | |
retainFirst (producer) | 指定仅保留第 n 个接收交换的数量。这在测试大数据时,通过不存储每个 Exchange this模拟端点的副本来减少内存消耗。重要信息:使用这个限制时,getReceivedCounter()仍会返回接收的 Exchange 的实际数量。例如,如果我们收到 5000 Exchanges,并且已配置为仅保留第 10 个 Exchanges,则 getReceivedCounter()将仍然返回 5000,但 getExchanges()中只有前 10 Exchanges()和 getReceivedExchanges()方法。使用此方法时,不支持其他一些预期方法,如 expectedBodiesReceived(Object…)设定预期值。您可以配置 setRetainFirst(int)和 setRetainLast(int)方法来限制第一个和最后一个接收的方法。 | -1 | int |
retainLast (producer) | 指定仅保留最近 n 个接收的 Exchange 数。这在测试大数据时,通过不存储每个 Exchange this模拟端点的副本来减少内存消耗。重要信息:使用这个限制时,getReceivedCounter()仍会返回接收的 Exchange 的实际数量。例如,如果我们收到 5000 Exchanges,并且已配置为仅保留最后 20 个 Exchanges,则 getReceivedCounter()将仍然返回 5000,但 getExchanges()中只有最后 20 Exchanges()和 getReceivedExchanges()方法。使用此方法时,不支持其他一些预期方法,如 expectedBodiesReceived(Object…)设定预期值。您可以配置 setRetainFirst(int)和 setRetainLast(int)方法来限制第一个和最后一个接收的方法。 | -1 | int |
sleepForEmptyTest (producer) | 允许指定 sleep 来等待在 expectedMessageCount(int)调用时检查此端点是否为空。 | long | |
copyOnExchange (producer (advanced)) | 设定在这种模拟端点接收时是否对传入 Exchange 进行深度副本。默认为 true。 | true | 布尔值 |