Exemplo n.º 1
0
        public void ConversionServiceUsedByDefault()
        {
            var converter   = new BoolToIntConverter();
            var convService = new GenericConversionService();

            convService.AddConverter(converter);
            var services = new ServiceCollection();
            var config   = new ConfigurationBuilder().Build();

            services.AddSingleton <IConfiguration>(config);
            services.AddSingleton <IApplicationContext, GenericApplicationContext>();
            services.AddSingleton <IIntegrationServices, IntegrationServices>();
            services.AddSingleton <IConversionService>(convService);
            services.AddSingleton <IMessageBuilderFactory, DefaultMessageBuilderFactory>();
            services.AddSingleton <DefaultDatatypeChannelMessageConverter>();
            var provider = services.BuildServiceProvider();
            var channel  = new QueueChannel(provider.GetService <IApplicationContext>(), "testChannel");

            channel.DataTypes = new List <Type>()
            {
                typeof(int), typeof(DateTime)
            };
            Assert.True(channel.Send(Message.Create(true)));
            Assert.Equal(1, channel.Receive().Payload);
        }
Exemplo n.º 2
0
        public void CustomConversionServiceFailure()
        {
            var conversionService = new GenericConversionService();
            var instance          = CreateInstance(conversionService);

            Assert.False(conversionService.CanConvert(typeof(int), typeof(string)));
            var invocableHandlerMethod = CreateInvocableHandlerMethod(instance, "SimpleString", typeof(string));

            Assert.Throws <MessageConversionException>(() => invocableHandlerMethod.Invoke(MessageBuilder <int> .WithPayload(123).Build()));
        }
Exemplo n.º 3
0
        public void CustomConversion()
        {
            var conversionService = new GenericConversionService();

            conversionService.AddConverter(new SampleBeanConverter());
            var instance = CreateInstance(conversionService);

            var invocableHandlerMethod = CreateInvocableHandlerMethod(instance, "SimpleString", typeof(string));

            invocableHandlerMethod.Invoke(MessageBuilder <SampleBean> .WithPayload(sample).Build());
            AssertMethodInvocation(sample, "SimpleString");
        }
        protected void AfterPropertiesSet()
        {
            if (ConversionService == null)
            {
                ConversionService = new GenericConversionService();
            }

            if (MessageConverter == null)
            {
                MessageConverter = new GenericMessageConverter(ConversionService);
            }

            if (_argumentResolvers.Resolvers.Count == 0)
            {
                _argumentResolvers.AddResolvers(InitArgumentResolvers());
            }
        }
Exemplo n.º 5
0
        public virtual void Initialize()
        {
            _argumentResolvers.Clear();

            if (ConversionService == null)
            {
                ConversionService = new GenericConversionService();
            }

            if (MessageConverter == null)
            {
                MessageConverter = new GenericMessageConverter(ConversionService);
            }

            if (_argumentResolvers.Resolvers.Count == 0)
            {
                _argumentResolvers.AddResolvers(InitArgumentResolvers());
            }
        }
Exemplo n.º 6
0
        public DefaultMessageHandlerMethodFactory(IConversionService conversionService, IMessageConverter converter, List <IHandlerMethodArgumentResolver> resolvers)
        {
            ConversionService       = conversionService;
            MessageConverter        = converter;
            CustomArgumentResolvers = resolvers;

            if (ConversionService == null)
            {
                ConversionService = new GenericConversionService();
            }

            if (MessageConverter == null)
            {
                MessageConverter = new GenericMessageConverter(ConversionService);
            }

            if (_argumentResolvers.Resolvers.Count == 0)
            {
                _argumentResolvers.AddResolvers(InitArgumentResolvers());
            }
        }
Exemplo n.º 7
0
        private DefaultMessageHandlerMethodFactory CreateInstance(GenericConversionService conversionService)
        {
            var factory = new DefaultMessageHandlerMethodFactory(conversionService);

            return(factory);
        }