public virtual void Initialize(IDependencyResolver resolver)
{
if (resolver == null)
{
throw new ArgumentNullException("resolver");
}
if (_initialized)
{
return;
}
Pool = resolver.Resolve<IMemoryPool>();
MessageBus = resolver.Resolve<IMessageBus>();
JsonSerializer = resolver.Resolve<JsonSerializer>();
TraceManager = resolver.Resolve<ITraceManager>();
Counters = resolver.Resolve<IPerformanceCounterManager>();
AckHandler = resolver.Resolve<IAckHandler>();
ProtectedData = resolver.Resolve<IProtectedData>();
UserIdProvider = resolver.Resolve<IUserIdProvider>();
_configurationManager = resolver.Resolve<IConfigurationManager>();
_transportManager = resolver.Resolve<ITransportManager>();
// Ensure that this server is listening for any ACKs sent over the bus.
resolver.Resolve<AckSubscriber>();
_initialized = true;
}