Example usage for org.springframework.integration.handler MethodInvokingMessageProcessor MethodInvokingMessageProcessor

List of usage examples for org.springframework.integration.handler MethodInvokingMessageProcessor MethodInvokingMessageProcessor

Introduction

In this page you can find the example usage for org.springframework.integration.handler MethodInvokingMessageProcessor MethodInvokingMessageProcessor.

Prototype

public MethodInvokingMessageProcessor(Object targetObject, Class<? extends Annotation> annotationType) 

Source Link

Usage

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void multiThreadsUUIDToStringConversion() throws Exception {
    Method method = TestService.class.getMethod("headerId", String.class, String.class);
    final MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    ExecutorService exec = Executors.newFixedThreadPool(100);
    processor.processMessage(new GenericMessage<String>("foo"));
    for (int i = 0; i < 100; i++) {
        exec.execute(new Runnable() {
            public void run() {
                Object result = processor.processMessage(new GenericMessage<String>("foo"));
                assertNotNull(result);/*  w  w w  . j a va  2  s  .  c o  m*/
            }
        });
    }
    exec.shutdown();
    assertTrue(exec.awaitTermination(10, TimeUnit.SECONDS));
    assertEquals(0, concurrencyFailures);
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void optionalHeader() throws Exception {
    Method method = TestService.class.getMethod("optionalHeader", Integer.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Object result = processor.processMessage(new GenericMessage<String>("foo"));
    assertNull(result);// www . j  ava2s  .c  o  m
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test(expected = MessageHandlingException.class)
public void requiredHeaderNotProvided() throws Exception {
    Method method = TestService.class.getMethod("requiredHeader", Integer.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    processor.processMessage(new GenericMessage<String>("foo"));
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test(expected = MessageHandlingException.class)
public void requiredHeaderNotProvidedOnSecondMessage() throws Exception {
    Method method = TestService.class.getMethod("requiredHeader", Integer.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<String> messageWithHeader = MessageBuilder.withPayload("foo").setHeader("num", new Integer(123))
            .build();//ww  w  .  j  a v a  2s  . c  o  m
    GenericMessage<String> messageWithoutHeader = new GenericMessage<String>("foo");

    processor.processMessage(messageWithHeader);
    processor.processMessage(messageWithoutHeader);
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void fromMessageWithRequiredHeaderProvided() throws Exception {
    Method method = TestService.class.getMethod("requiredHeader", Integer.class);
    Message<String> message = MessageBuilder.withPayload("foo").setHeader("num", new Integer(123)).build();
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Object result = processor.processMessage(message);
    assertEquals(new Integer(123), result);
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test(expected = MessageHandlingException.class)
public void fromMessageWithOptionalAndRequiredHeaderAndOnlyOptionalHeaderProvided() throws Exception {
    Method method = TestService.class.getMethod("optionalAndRequiredHeader", String.class, Integer.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<String> message = MessageBuilder.withPayload("foo").setHeader("prop", "bar").build();
    processor.processMessage(message);//  ww w . ja v a 2  s.c o m
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void fromMessageWithOptionalAndRequiredHeaderAndOnlyRequiredHeaderProvided() throws Exception {
    Method method = TestService.class.getMethod("optionalAndRequiredHeader", String.class, Integer.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<String> message = MessageBuilder.withPayload("foo").setHeader("num", new Integer(123)).build();
    Object result = processor.processMessage(message);
    assertEquals("null123", result);
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void fromMessageWithOptionalAndRequiredHeaderAndBothHeadersProvided() throws Exception {
    Method method = TestService.class.getMethod("optionalAndRequiredHeader", String.class, Integer.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<String> message = MessageBuilder.withPayload("foo").setHeader("num", new Integer(123))
            .setHeader("prop", "bar").build();
    Object result = processor.processMessage(message);
    assertEquals("bar123", result);
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void fromMessageWithPropertiesMethodAndHeadersAnnotation() throws Exception {
    Method method = TestService.class.getMethod("propertiesHeaders", Properties.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<String> message = MessageBuilder.withPayload("test").setHeader("prop1", "foo")
            .setHeader("prop2", "bar").build();
    Object result = processor.processMessage(message);
    Properties props = (Properties) result;
    assertEquals("foo", props.getProperty("prop1"));
    assertEquals("bar", props.getProperty("prop2"));
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

@Test
public void fromMessageWithPropertiesAndObjectMethod() throws Exception {
    Method method = TestService.class.getMethod("propertiesHeadersAndPayload", Properties.class, Object.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<String> message = MessageBuilder.withPayload("test").setHeader("prop1", "foo")
            .setHeader("prop2", "bar").build();
    Object result = processor.processMessage(message);
    Properties props = (Properties) result;
    assertEquals("foo", props.getProperty("prop1"));
    assertEquals("bar", props.getProperty("prop2"));
    assertEquals("test", props.getProperty("payload"));
}