Example #1
0
        public Device(DeviceOption option,
                      IEnumerable <IExchange <TIn> > exchanges,
                      IEventBus eventBus,
                      Func <ProduserOption, Owned <IProduser> > produser4DeviceRespFactory,
                      ProduserOption produser4DeviceOption,
                      ILogger logger)
        {
            Option    = option;
            Exchanges = exchanges.ToList();
            _eventBus = eventBus;
            _logger   = logger;

            var produserOwner = produser4DeviceRespFactory(produser4DeviceOption);

            _produserOwner          = produserOwner;         //можно создать/удалить produser в любое время используя фабрику и Owner
            _produser               = produserOwner.Value;
            TopicName4MessageBroker = null;
        }
 public void AddProduser(string key, IProduser <BaseProduserOption> value, IDisposable owner)
 {
     _produsersDict[key] = new ProduserOwner {
         Produser = value, Owner = owner
     };
 }