Пример #1
0
        /// <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
            };
        }
Пример #2
0
        /// <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
            };
        }
Пример #3
0
        /// <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
            };
        }