本文整理匯總了Java中org.apache.camel.component.mock.MockEndpoint.whenExchangeReceived方法的典型用法代碼示例。如果您正苦於以下問題:Java MockEndpoint.whenExchangeReceived方法的具體用法?Java MockEndpoint.whenExchangeReceived怎麽用?Java MockEndpoint.whenExchangeReceived使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.camel.component.mock.MockEndpoint
的用法示例。
在下文中一共展示了MockEndpoint.whenExchangeReceived方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: testConsumptionRollback
import org.apache.camel.component.mock.MockEndpoint; //導入方法依賴的package包/類
@Test
public void testConsumptionRollback() throws Exception {
final int completionTimeout = 2000;
final int completionSize = 5;
final String queueName = getQueueName();
context.addRoutes(new TransactedSendHarness(queueName));
context.addRoutes(new RouteBuilder() {
public void configure() throws Exception {
fromF("sjms-batch:%s?completionTimeout=%s&completionSize=%s&aggregationStrategy=#testStrategy",
queueName, completionTimeout, completionSize).routeId("batchConsumer").startupOrder(10)
.to("mock:batches");
}
});
context.start();
int messageCount = 5;
MockEndpoint mockBatches = getMockEndpoint("mock:batches");
// the first time around, the batch should throw an exception
mockBatches.whenExchangeReceived(1, new Processor() {
@Override
public void process(Exchange exchange) throws Exception {
throw new RuntimeException("Boom!");
}
});
// so the batch should be processed twice due to redelivery
mockBatches.expectedMessageCount(2);
template.sendBody("direct:in", generateStrings(messageCount));
mockBatches.assertIsSatisfied();
}