public MessageBus(MessageBusCreateParameters parameters = null) { parameters = parameters ?? MessageBusCreateParameters.Default; Id = parameters.Id ?? Guid.NewGuid().ToString(); Logger = parameters.GetLogger() ?? new SilentLogger(); WorkerPool = new WorkerPool(Logger, parameters.NumberOfWorkers, parameters.MaximumQueuedMessages); Modules = new ModuleManager(Logger); EnvelopeFactory = new EnvelopeFactory(Id, parameters.IdGenerator ?? new LocalIncrementIdGenerator()); _subscriptionDispatcher = new SubscriptionDispatcher(Logger, parameters.AllowWildcards); _requestDispatcher = new RequestDispatcher(Logger, parameters.AllowWildcards); _participantDispatcher = new ParticipantDispatcher(Logger, parameters.AllowWildcards); _router = new TopicRouter(); }
private static IMessageBus DefaultFactoryMethod(MessageBusCreateParameters p) { return(new MessageBus(p)); }
public MessageBusBuilder() { _parameters = new MessageBusCreateParameters(); _factory = DefaultFactoryMethod; }