Beispiel #1
0
Datei: Hub.cs Projekt: S17L/iGP11
        public Hub(
            IEventRepository <HubEvent> hubEventRepository,
            IEventRepository <EndpointEvent> endpointEventRepository,
            IHubTransport hubTransport,
            ILogger logger)
        {
            _hubEventRepository      = hubEventRepository;
            _endpointEventRepository = endpointEventRepository;
            _hubTransport            = hubTransport;
            _logger = logger;

            _scheduler = new AsynchronousScheduler(_logger);
            _queue     = new EventQueue <HubEvent>(this, _hubEventRepository, new NoEventSchedulingPolicy(), _logger);
            _scheduler.Subscribe(_queue);
            _hubTransport.Connect(this);
            _scheduler.Start();
        }
Beispiel #2
0
        public Endpoint(
            IHub hub,
            EndpointId id,
            IEventRepository <EndpointEvent> endpointEventRepository,
            IHubTransport hubTransport,
            ILogger logger,
            IAsynchronousScheduler scheduler)
        {
            _hub          = hub;
            _hubTransport = hubTransport;
            _scheduler    = scheduler;

            Id = id;

            _queue = new EventQueue <EndpointEvent>(this, endpointEventRepository, new NoEventSchedulingPolicy(), logger);
            _scheduler.Subscribe(_queue);
        }