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 fromMessageToPayloadArgsHeaderArgs() throws Exception {
    Method method = TestService.class.getMethod("payloadArgAndHeaderArg", String.class, String.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<Employee> message = MessageBuilder.withPayload(employee).setHeader("day", "monday").build();
    Object result = processor.processMessage(message);
    Assert.assertEquals("olegmonday", result);
}

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

@Test(expected = MessagingException.class)
public void fromMessageInvalidMethodWithMultipleMappingAnnotations() throws Exception {
    Method method = MultipleMappingAnnotationTestBean.class.getMethod("test", String.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<?> message = MessageBuilder.withPayload("payload").setHeader("foo", "bar").build();
    processor.processMessage(message);//from w  w w  .ja  v a 2s .c  om
}

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

@Test
public void fromMessageToHeadersWithExpressions() throws Exception {
    Method method = TestService.class.getMethod("headersWithExpressions", String.class, String.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Employee employee = new Employee("John", "Doe");
    Message<?> message = MessageBuilder.withPayload("payload").setHeader("emp", employee).build();
    Object result = processor.processMessage(message);
    assertEquals("DOE, John", result);
}

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

@Test
public void fromMessageToHyphenatedHeaderName() throws Exception {
    Method method = TestService.class.getMethod("headerNameWithHyphen", String.class);
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(testService, method);
    Message<?> message = MessageBuilder.withPayload("payload").setHeader("foo-bar", "abc").build();
    Object result = processor.processMessage(message);
    assertEquals("ABC", result);
}

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

@Test
public void testHandlerInheritanceMethodImplInSuper() {
    class A {//from   w  w w  .  j a  v  a 2s. c  o m
        @SuppressWarnings("unused")
        public Message<String> myMethod(final Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("A", "A").build();
        }
    }

    class B extends A {
    }

    @SuppressWarnings("unused")
    class C extends B {
    }

    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(new B(), "myMethod");
    Message<?> message = (Message<?>) processor.processMessage(new GenericMessage<String>(""));
    assertEquals("A", message.getHeaders().get("A"));
}

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

@Test
public void testHandlerInheritanceMethodImplInLatestSuper() {
    class A {//  w ww . j ava 2s  .  co  m
        @SuppressWarnings("unused")
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("A", "A").build();
        }
    }

    class B extends A {
        @Override
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("B", "B").build();
        }
    }

    @SuppressWarnings("unused")
    class C extends B {
    }

    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(new B(), "myMethod");
    Message<?> message = (Message<?>) processor.processMessage(new GenericMessage<String>(""));
    assertEquals("B", message.getHeaders().get("B"));
}

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

public void testHandlerInheritanceMethodImplInSubClass() {
    class A {// w  w  w . j  av a 2s  . c  o  m
        @SuppressWarnings("unused")
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("A", "A").build();
        }
    }

    class B extends A {
        @Override
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("B", "B").build();
        }
    }

    class C extends B {
        @Override
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("C", "C").build();
        }
    }

    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(new C(), "myMethod");
    Message<?> message = (Message<?>) processor.processMessage(new GenericMessage<String>(""));
    assertEquals("C", message.getHeaders().get("C"));
}

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

public void testHandlerInheritanceMethodImplInSubClassAndSuper() {
    class A {/*from  ww  w  .j  av a 2s.c  om*/
        @SuppressWarnings("unused")
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("A", "A").build();
        }
    }

    class B extends A {
    }

    class C extends B {
        @Override
        public Message<String> myMethod(Message<String> msg) {
            return MessageBuilder.fromMessage(msg).setHeader("C", "C").build();
        }
    }

    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(new C(), "myMethod");
    Message<?> message = (Message<?>) processor.processMessage(new GenericMessage<String>(""));
    assertEquals("C", message.getHeaders().get("C"));
}

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

@Test
public void payloadAsMethodParameterAndObjectAsReturnValue() {
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(new TestBean(),
            "acceptPayloadAndReturnObject");
    Object result = processor.processMessage(new GenericMessage<String>("testing"));
    assertEquals("testing-1", result);
}

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

@Test
public void testPayloadCoercedToString() {
    MethodInvokingMessageProcessor processor = new MethodInvokingMessageProcessor(new TestBean(),
            "acceptPayloadAndReturnObject");
    Object result = processor.processMessage(new GenericMessage<Integer>(123456789));
    assertEquals("123456789-1", result);
}