Example #1
0
        /// <summary>
        /// Верннуть все опции продюссеров
        /// </summary>
        /// <returns></returns>
        public ProduserUnionOption GetProduserUnionOptionAgregator()
        {
            var agregator = new ProduserUnionOption();
            var produsers = _produsersUnion.GetProduserDict.Values;

            foreach (var prod in produsers)
            {
                switch (prod.Option)
                {
                case SignalRProduserOption signalROption:
                    agregator.SignalRProduserOptions.Add(signalROption);
                    break;

                case KafkaProduserOption kafkaOption:
                    agregator.KafkaProduserOptions.Add(kafkaOption);
                    break;

                case WebClientProduserOption webClientOption:
                    agregator.WebClientProduserOptions.Add(webClientOption);
                    break;

                    //case ProduserType.SerilogLoger:
                    //    break;
                }
            }
            return(agregator);
        }
Example #2
0
 /// <summary>
 /// Добавляет созданные на базе опций продюссеры к ProdusersUnion
 /// </summary>
 /// <param name="unionOption"></param>
 public void FillProduserUnionByOptionAgregator(ProduserUnionOption unionOption)
 {
     foreach (var option in unionOption.KafkaProduserOptions)
     {
         var prod = _kafkaFactory(option);
         _produsersUnion.AddProduser(option.Key, prod.Value, prod);
     }
     foreach (var option in unionOption.SignalRProduserOptions)
     {
         var prod = _signalRFactory(option);
         _produsersUnion.AddProduser(option.Key, prod.Value, prod);
     }
     foreach (var option in unionOption.WebClientProduserOptions)
     {
         var prod = _webClientFactory(option);
         _produsersUnion.AddProduser(option.Key, prod.Value, prod);
     }
 }
Example #3
0
        /// <summary>
        /// Добавляет созданные на базе опций продюссеры к ProdusersUnion
        /// </summary>
        /// <param name="unionOption"></param>
        public ProdusersUnion <TIn> FillProduserUnionByOptionAgregator(ProduserUnionOption unionOption)
        {
            var produsersUnion = _produsersUnionFactory(unionOption);

            foreach (var option in unionOption.KafkaProduserOptions)
            {
                var prod = _kafkaFactory(option);
                produsersUnion.AddProduser(option.Key, prod.Value, prod);
            }
            foreach (var option in unionOption.SignalRProduserOptions)
            {
                var prod = _signalRFactory(option);
                produsersUnion.AddProduser(option.Key, prod.Value, prod);
            }
            foreach (var option in unionOption.WebClientProduserOptions)
            {
                var prod = _webClientFactory(option);
                produsersUnion.AddProduser(option.Key, prod.Value, prod);
            }

            return(produsersUnion);
        }
Example #4
0
 public ActionResult Post([FromBody] ProduserUnionOption value)
 {
     _produsersFactory.FillProduserUnionByOptionAgregator(value);
     return(Ok());
 }
 public ProdusersUnion(ProduserUnionOption unionOption)
 {
     _unionOption = unionOption;
 }