コード例 #1
0
        public MethodInvokingSelector(object obj, MethodInfo method)
        {
            _invoker = new MessageMappingMethodInvoker(obj, method);
            Type returnType = method.ReturnType;

            AssertUtils.IsTrue(typeof(bool).IsAssignableFrom(returnType), "MethodInvokingSelector method must return a boolean result.");
        }
        public void MessageSubclassAsMethodParameterAndMessageSubclassAsReturnValue()
        {
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(new TestBean(),
                                                                                  "AcceptMessageSubclassAndReturnMessageSubclass");
            IMessage result = (IMessage)invoker.InvokeMethod(new StringMessage("testing"));

            Assert.That(result.Payload, Is.EqualTo("testing-6"));
        }
        public void MessageAsMethodParameterAndObjectAsReturnValue()
        {
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(new TestBean(),
                                                                                  "AcceptMessageAndReturnObject");
            object result = invoker.InvokeMethod(new StringMessage("testing"));

            Assert.That(result, Is.EqualTo("testing-3"));
        }
        public void ConversionFailureWithAnnotatedMethod()
        {
            AnnotatedTestService        service = new AnnotatedTestService();
            MethodInfo                  method  = service.GetType().GetMethod("IntegerMethod");
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(service, method);
            object result = invoker.InvokeMethod(new StringMessage("foo"));

            Assert.That(result, Is.EqualTo(123));
        }
        public void PayloadWithAnnotatedMethod()
        {
            AnnotatedTestService        service = new AnnotatedTestService();
            MethodInfo                  method  = service.GetType().GetMethod("IntegerMethod");
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(service, method);
            object result = invoker.InvokeMethod(new Message <int>(123));

            Assert.That(result, Is.EqualTo(123));
        }
        public void MessageOnlyWithAnnotatedMethod()
        {
            AnnotatedTestService        service = new AnnotatedTestService();
            MethodInfo                  method  = service.GetType().GetMethod("MessageOnly");
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(service, method);
            object result = invoker.InvokeMethod(new StringMessage("foo"));

            Assert.That(result, Is.EqualTo("foo"));
        }
        public void PayloadAndHeaderAnnotationMethodParametersAndObjectAsReturnValue()
        {
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(new TestBean(),
                                                                                  "AcceptPayloadAndHeaderAndReturnObject");
            IMessage request = MessageBuilder.WithPayload("testing").SetHeader("number", 123).Build();
            object   result  = invoker.InvokeMethod(request);

            Assert.That(result, Is.EqualTo("testing-123"));
        }
        public void MessageAndHeaderWithAnnotatedMethod()
        {
            AnnotatedTestService        service = new AnnotatedTestService();
            MethodInfo                  method  = service.GetType().GetMethod("MessageAndHeader");
            MessageMappingMethodInvoker invoker = new MessageMappingMethodInvoker(service, method);
            IMessage message = MessageBuilder.WithPayload("foo").SetHeader("number", 42).Build();
            object   result  = invoker.InvokeMethod(message);

            Assert.That(result, Is.EqualTo("foo-42"));
        }
コード例 #9
0
 public MethodInvokingSplitter(object obj)
 {
     _invoker = new MessageMappingMethodInvoker(obj, typeof(SplitterAttribute));
 }
コード例 #10
0
 public MethodInvokingSplitter(object obj, string methodName)
 {
     _invoker = new MessageMappingMethodInvoker(obj, methodName);
 }
コード例 #11
0
 public MethodInvokingSplitter(object obj, MethodInfo method)
 {
     _invoker = new MessageMappingMethodInvoker(obj, method);
 }
 public MethodInvokingTransformer(object obj)
 {
     _invoker = new MessageMappingMethodInvoker(obj, typeof(TransformerAttribute));
 }
 public MethodInvokingTransformer(object obj, string methodName)
 {
     _invoker = new MessageMappingMethodInvoker(obj, methodName);
 }
 public MethodInvokingTransformer(object obj, MethodInfo method)
 {
     _invoker = new MessageMappingMethodInvoker(obj, method);
 }