public final List<Message<?>> purge() { List<Message<?>> purgedMessages = new ArrayList<Message<?>>(); for (QueueChannel channel : this.channels) { List<Message<?>> results = (this.selector == null) ? channel.clear() : channel.purge(this.selector); if (results != null) { purgedMessages.addAll(results); } } return purgedMessages; }
@Test public void testAggregationWithMessageGroupProcessorAndStrategies() { QueueChannel output = this.context.getBean("outputChannel", QueueChannel.class); output.purge(null); MessageChannel input = (MessageChannel) context.getBean("aggregatorWithCustomMGPReferenceInput"); List<Message<?>> outboundMessages = new ArrayList<>(); outboundMessages.add(createMessage("123", "id1", 3, 1, null)); outboundMessages.add(createMessage("789", "id1", 3, 3, null)); outboundMessages.add(createMessage("456", "id1", 3, 2, null)); outboundMessages.forEach(input::send); assertEquals(3, output.getQueueSize()); output.purge(null); }
@After public void tearDown() { this.mockIntegrationContext.resetBeans("mySourceEndpoint", "inboundChannelAdapter"); results.purge(null); }
@After public void tearDown() { this.mockIntegrationContext.resetBeans(); results.purge(null); }
@Test public void testAggregationWithMessageGroupProcessor() { QueueChannel output = this.context.getBean("outputChannel", QueueChannel.class); output.purge(null); MessageChannel input = (MessageChannel) context.getBean("aggregatorWithMGPReferenceInput"); List<Message<?>> outboundMessages = new ArrayList<>(); outboundMessages.add(createMessage("123", "id1", 3, 1, null)); outboundMessages.add(createMessage("789", "id1", 3, 3, null)); outboundMessages.add(createMessage("456", "id1", 3, 2, null)); outboundMessages.forEach(input::send); assertEquals(3, output.getQueueSize()); output.purge(null); assertFalse(TestUtils.getPropertyValue(context.getBean("aggregatorWithMGPReference.handler"), "releaseLockBeforeSend", Boolean.class)); }
private void sendMessage(DirectChannel channel, int waitSeconds) { List<String> list = new ArrayList<>(); list.add("foo"); list.add("bar"); list.add("baz"); this.reply.purge(null); channel.send(MessageBuilder.withPayload(list).setReplyChannel(reply).build()); Message<?> replyMessage; int messageCount = 0; do { replyMessage = reply.receive(waitSeconds); if (null != replyMessage) { messageCount++; } } while (null != replyMessage); Assert.assertEquals(1, messageCount); }
@Test public void testZeroGroupTimeoutExpressionScheduling() { try { this.output.purge(null); this.errors.purge(null); GenericMessage<String> message = new GenericMessage<>("foo"); this.output.send(message); this.output.send(message); this.output.send(message); this.output.send(message); this.output.send(message); this.zeroGroupTimeoutExpressionAggregatorInput.send(new GenericMessage<>(1, stubHeaders(1, 2, 1))); ErrorMessage em = (ErrorMessage) this.errors.receive(10000); assertNotNull(em); assertThat(em.getPayload().getMessage().toLowerCase(), containsString("failed to send message to channel 'output' within timeout: 10")); } finally { this.output.purge(null); this.errors.purge(null); } }
@Test @MongoDbAvailable public void testWithNamedCollection() throws Exception { this.mongoTemplate.save(this.createPerson("Bob"), "foo"); this.mongoInboundAdapterWithNamedCollection.start(); @SuppressWarnings("unchecked") Message<List<Person>> message = (Message<List<Person>>) replyChannel.receive(10000); assertNotNull(message); assertEquals("Bob", message.getPayload().get(0).getName()); this.mongoInboundAdapterWithNamedCollection.stop(); this.replyChannel.purge(null); }
@Test @MongoDbAvailable public void testWithNamedCollectionExpression() throws Exception { this.mongoTemplate.save(this.createPerson("Bob"), "foo"); this.mongoInboundAdapterWithNamedCollectionExpression.start(); @SuppressWarnings("unchecked") Message<List<Person>> message = (Message<List<Person>>) replyChannel.receive(10000); assertNotNull(message); assertEquals("Bob", message.getPayload().get(0).getName()); this.mongoInboundAdapterWithNamedCollectionExpression.stop(); this.replyChannel.purge(null); }
@Test @MongoDbAvailable public void testWithNamedMongoFactory() throws Exception { this.mongoTemplate.save(this.createPerson("Bob"), "data"); this.mongoInboundAdapterNamedFactory.start(); @SuppressWarnings("unchecked") Message<List<Document>> message = (Message<List<Document>>) replyChannel.receive(10000); assertNotNull(message); assertEquals("Bob", message.getPayload().get(0).get("name")); this.mongoInboundAdapterNamedFactory.stop(); this.replyChannel.purge(null); }
this.data.purge(null); this.metadataMap.clear(); this.adapter.start();
this.data.purge(null); this.adapter.start(); received = (Message<byte[]>) this.data.receive(10000);
@Test @MongoDbAvailable public void testWithMongoConverter() throws Exception { this.mongoTemplate.save(this.createPerson("Bob"), "data"); this.mongoInboundAdapterWithConverter.start(); @SuppressWarnings("unchecked") Message<List<Person>> message = (Message<List<Person>>) replyChannel.receive(10000); assertNotNull(message); assertEquals("Bob", message.getPayload().get(0).getName()); assertNotNull(replyChannel.receive(10000)); this.mongoInboundAdapterWithConverter.stop(); this.replyChannel.purge(null); }
@Test @MongoDbAvailable public void testWithDefaultMongoFactory() throws Exception { this.mongoTemplate.save(createPerson("Bob"), "data"); this.mongoInboundAdapter.start(); @SuppressWarnings("unchecked") Message<List<Person>> message = (Message<List<Person>>) replyChannel.receive(10000); assertNotNull(message); assertEquals("Bob", message.getPayload().get(0).getName()); assertNotNull(this.replyChannel.receive(10000)); this.mongoInboundAdapter.stop(); this.replyChannel.purge(null); }
@Test @MongoDbAvailable public void testWithMongoTemplate() throws Exception { this.mongoTemplate.save(this.createPerson("Bob"), "data"); this.mongoInboundAdapterWithTemplate.start(); @SuppressWarnings("unchecked") Message<Person> message = (Message<Person>) replyChannel.receive(10000); assertNotNull(message); assertEquals("Bob", message.getPayload().getName()); this.mongoInboundAdapterWithTemplate.stop(); this.replyChannel.purge(null); }
@Test public void integrationTest() { QueueChannel output = context.getBean("output", QueueChannel.class); output.purge(null);
@Test public void testPurge() { QueueChannel channel = new QueueChannel(2); long minute = 60 * 1000; long time = System.currentTimeMillis(); long past = time - minute; long future = time + minute; Message<String> expiredMessage = MessageBuilder.withPayload("test1") .setExpirationDate(past).build(); Message<String> unexpiredMessage = MessageBuilder.withPayload("test2") .setExpirationDate(future).build(); assertTrue(channel.send(expiredMessage, 0)); assertTrue(channel.send(unexpiredMessage, 0)); assertFalse(channel.send(new GenericMessage<>("atCapacity"), 0)); List<Message<?>> purgedMessages = channel.purge(new UnexpiredMessageSelector()); assertNotNull(purgedMessages); assertEquals(1, purgedMessages.size()); assertTrue(channel.send(new GenericMessage<>("roomAvailable"), 0)); }
@Test @MongoDbAvailable public void testWithOnSuccessDisposition() throws Exception { this.mongoTemplate.save(createPerson("Bob"), "data"); this.inboundAdapterWithOnSuccessDisposition.start(); assertNotNull(replyChannel.receive(10000)); assertNull(replyChannel.receive(100)); assertNotNull(this.afterCommitChannel.receive(10000)); assertNull(this.mongoTemplate.findOne(new Query(Criteria.where("name").is("Bob")), Person.class, "data")); this.inboundAdapterWithOnSuccessDisposition.stop(); this.replyChannel.purge(null); }