81.2. 选项
Dataset 组件没有选项。
Dataset 端点使用 URI 语法进行配置:
dataset:name
使用以下路径和查询参数:
81.2.1. 路径参数(1 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
name | 在 registry 中查找的 DataSet 必需 的名称 | DataSet |
81.2.2. 查询参数(19 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
dataSetIndex (common) | 控制 CamelDataSetIndex 标头的行为。对于 Consumers: - off = 标头不会被设置 - strict/lenient = 将设置标头。对于 Producers: - off = 不会被验证,如果标头值不存在,则不会设置它,如果标头值不存在,它将会被验证 = lenient = 它会验证标头值(如果不存在),则不会设置它,如果不存在,则不会设置标头值。 | lenient | 字符串 |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外,该处理程序记录在 WARN/ERROR 级别并忽略。 | false | 布尔值 |
initialDelay (consumer) | 开始发送消息前的 millis 中等待的时间。 | 1000 | long |
minRate (consumer) | 等待 DataSet 至少包含这个数量的信息 | 0 | int |
preloadSize (consumer) | 设置在路由完成初始化前预加载(sent)多少消息 | 0 | long |
produceDelay (consumer) | 允许指定延迟,它会在消费者发送消息时造成延迟(以模拟缓慢的处理) | 3 | long |
ExceptionHandler ( consumer) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,该例外记录在 WARN/ERROR 级别并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在创建交换时设置默认交换模式。 | ExchangePattern | |
assertPeriod (producer) | 设置一个宽限期,之后 mock 端点将重新断言,以确保初始断言仍然有效。例如,这只用于表示多个消息到达的 assert。例如,如果 expectedMessageCount (int)设为 5,则当 5 个或更多消息到达时,会满足断言。为确保准确 5 个消息到达,您需要稍等片刻,以确保进一步的消息到达。这是您可以对此使用 setAssertPeriod (长)方法的内容。默认情况下禁用这个周期。 | 0 | long |
consumeDelay (producer) | 允许指定延迟,这会导致生成者使用消息时造成延迟(以模拟缓慢的处理) | 0 | long |
expectedCount (producer) | 指定此端点应接收的消息交换数量。注意:如果要预期 0 个消息,请在测试启动时做额外的小心,以 0 匹配,因此您需要设置一个 assert 周期时间以便让测试在一段时间内运行,以确保仍然没有消息到达;对于 setAssertPeriod (长)。另一种方法是使用 NotifyBuilder,并在调用 mocks 上的 assertIsSatisfied ()方法前,使用 notifier 知道 Camel 何时进行路由。这可让您不使用固定的 assert 周期来加快测试时间。如果您要断言,其中第 n 个消息到达这个 mock 端点,则还要查看 setAssertPeriod (long)方法了解更多详情。 | -1 | int |
reportGroup (producer) | 用于根据大小组打开吞吐量日志记录的数字。 | int | |
resultMinimumWaitTime (producer) | 设置 assertIsSatisfied ()的最小预期时间(单位为 millis)将等待 latch,直到它满足为止 | 0 | long |
resultWaitTime (producer) | 设置 assertIsSatisfied ()将等待的最大时间量,直到它满足为止 | 0 | long |
retainFirst (producer) | 指定只保留收到的前 n 个接收交换数。这在测试大数据时,通过不存储此模拟端点接收的每一个交换的副本来减少内存消耗。重要: 使用此限制时,getReceivedCounter ()仍然会返回接收的交换的实际数量。例如,如果我们收到 5000 Exchanges,并且配置为仅保留前 10 个交换,那么 getReceivedCounter () 仍然会返回 5000,但 getExchanges ()中只有前 10 Exchanges () 和 getReceivedExchanges ()方法。使用此方法时,不支持其他一些预期的方法,例如 expectedBodiesReceived (Object…)在收到的第一个正文数上设置预期。您可以配置 setRetainFirst (int)和 setRetainLast (int)方法,以限制第一个和最后一个收到。 | -1 | int |
retainLast (producer) | 指定只保留最后第 n 个接收交换的数量。这在测试大数据时,通过不存储此模拟端点接收的每一个交换的副本来减少内存消耗。重要: 使用此限制时,getReceivedCounter ()仍然会返回接收的交换的实际数量。例如,如果我们收到 5000 Exchanges,并且配置为仅保留最后 20 个交换,那么 getReceivedCounter () 仍然会返回 5000,但 getExchanges () 中只有最后 20 个交换程序)和 getReceivedExchanges ()方法。使用此方法时,不支持其他一些预期的方法,例如 expectedBodiesReceived (Object…)在收到的第一个正文数上设置预期。您可以配置 setRetainFirst (int)和 setRetainLast (int)方法,以限制第一个和最后一个收到。 | -1 | int |
sleepForEmptyTest (producer) | 使用零调用 expectedMessageCount (int)时,允许指定 sleep 来检查此端点是否确实为空 | 0 | long |
copyOnExchange (producer) | 设置在这个模拟端点收到传入 Exchange 时是否进行深度副本。默认为 true。 | true | 布尔值 |
同步 (高级) | 设置是否应严格使用同步处理,还是允许 Camel 使用异步处理(如果支持)。 | false | 布尔值 |
您可以在 URI 中附加查询选项,格式为 ?option=value&option=value&…