17.4.2. 查询参数(21 参数)


Name描述默认类型

dataSetIndex (common)

控制 CamelDataSetIndex 标头的行为。对于 Consumers: - off = header 不会被设置 - strict/lenient = header 将被设置 For Producers: - off = 不会验证标头值,如果它不存在 = 严格 = 必须存在,并将验证 = lenient = 标题值将会被验证(如果不存在)并不会设置它。

枚举值:

  • strict
  • lenient
  • off

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))

在消费者创建交换时设置交换模式。

枚举值:

  • InOnly
  • InOut
  • InOptionalOut
 

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

布尔值

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.