public RabbitMQServiceBus( IConnectionFactory connectionFactory, IQueueNameStrategy queueNameStrategy, ISerialisationStrategy serialisationStrategy, IMessageProcessor messageProcessor) { _queueNameStrategy = queueNameStrategy; _serialisationStrategy = serialisationStrategy; _messageProcessor = messageProcessor; _publishConnection = new Lazy <IConnection>(connectionFactory.CreateConnection, LazyThreadSafetyMode.PublicationOnly); _consumeConnection = new Lazy <IConnection>(connectionFactory.CreateConnection, LazyThreadSafetyMode.PublicationOnly); // TODO: Is 10 enough? Add to config _publishChannels = new ResourcePool <IModel>(10, () => _publishConnection.Value.CreateModel()); _queueManager = new QueueManager(); }
public Resource(ResourcePool <TResource> resourcePool, TResource value) { _resourcePool = resourcePool; Value = value; }