public ServiceBusTransport(IServiceBusConfiguration configuration) { TransportChannelFactories = new ITransportChannelFactory[] { new ServiceBusQueueChannelFactory(configuration), new ServiceBusTopicChannelFactory(configuration) }; }
public RedisTransport(RedisConfiguration configuration) { var multiplexer = ConnectionMultiplexer.Connect(configuration.ConnectionString); TransportChannelFactories = new ITransportChannelFactory[] { new RedisCommandChannelFactory(configuration, multiplexer), new RedisEventChannelFactory(configuration, multiplexer), }; }
private IMessageSerializer GetSerializer(ITransportChannelFactory channelFactory, Type messageType) { var mapping = AutoMessageMapper.GetMapping(messageType); if (mapping is ICustomMessageSerializer serializer) { return(serializer.MessageSerializer); } return(channelFactory.Configuration.MessageSerializer); }
public MiddlewarePipeline(IEnumerable <IMessageProcessorMiddleware> hostMiddlewares, ITransportChannelFactory transportChannelFactory, ILog log) { //Add default outlying middlewares _middlewares.Add(new ErrorHandlingMiddleware(log)); _middlewares.Add(new DeadLetterMiddleware()); //Add host-global middlewares _middlewares.AddRange(hostMiddlewares); //Add transport middlewares _middlewares.AddRange(transportChannelFactory.Middlewares); }
public StorageTransport(IStorageBusConfiguration configuration) { TransportChannelFactories = new ITransportChannelFactory[] { new StorageQueueChannelFactory(configuration), }; }
public MiddlewarePipeline(IEnumerable <IMessageProcessorMiddleware> hostMiddlewares, IPipelineInformation pipelineInformation, ITransportChannelFactory transportChannelFactory, ILog log) { _pipelineInformation = pipelineInformation; //Add default outlying middlewares _middlewares.Add(new ErrorHandlingMiddleware(log)); //See if there is a IMessageScopeProviderMiddleware that needs to be placed before the other middlewares var processorMiddlewares = new List <IMessageProcessorMiddleware>(hostMiddlewares); var scopeProvider = processorMiddlewares.SingleOrDefault(scopeMiddleware => scopeMiddleware is IMessageScopeProviderMiddleware); if (scopeProvider != null) { _middlewares.Add(scopeProvider); processorMiddlewares.Remove(scopeProvider); } _middlewares.Add(new DeadLetterMiddleware()); //Add host-global middlewares _middlewares.AddRange(processorMiddlewares); //Add transport middlewares _middlewares.AddRange(transportChannelFactory.Middlewares); }