/// <summary> /// Creates a new instance of the <see cref="RoutingTables"/> class. /// </summary> public RoutingTables(IRouteMappingTables mappingTable = null) { m_prevCalculatedConsumers = new HashSet <IAdapter>(); m_prevCalculatedProducers = new HashSet <IAdapter>(); m_routeMappingTables = mappingTable ?? new RouteMappingDoubleBufferQueue(); m_routeMappingTables.Initialize(OnStatusMessage, OnProcessException); m_calculateRoutingTablesOperation = new LongSynchronizedOperation(CalculateRoutingTables) { IsBackground = true }; }
/// <summary> /// Creates a new instance of the <see cref="RoutingTables"/> class. /// </summary> public RoutingTables(IRouteMappingTables mappingTable = null) { Log = Logger.CreatePublisher(GetType(), MessageClass.Framework); Log.InitialStackMessages = Log.InitialStackMessages.Union("ComponentName", GetType().Name); m_prevCalculatedConsumers = new HashSet <IAdapter>(); m_prevCalculatedProducers = new HashSet <IAdapter>(); m_routeMappingTables = mappingTable ?? new RouteMappingDoubleBufferQueue(); m_routeMappingTables.Initialize(status => OnStatusMessage(MessageLevel.Info, status, "Initialization"), ex => OnProcessException(MessageLevel.Warning, ex, "Initialization")); m_calculateRoutingTablesOperation = new LongSynchronizedOperation(CalculateRoutingTables) { IsBackground = true }; }
/// <summary> /// Creates a new instance of the <see cref="RoutingTables"/> class. /// </summary> public RoutingTables(IRouteMappingTables mappingTable = null) { m_prevCalculatedConsumers = new HashSet<IAdapter>(); m_prevCalculatedProducers = new HashSet<IAdapter>(); m_routeMappingTables = mappingTable ?? new RouteMappingDoubleBufferQueue(); m_routeMappingTables.Initialize(OnStatusMessage, OnProcessException); m_calculateRoutingTablesOperation = new LongSynchronizedOperation(CalculateRoutingTables) { IsBackground = true }; }