public void AddInput(IInput <Message> transport)
        {
            var res = observers.Find(x => x.TransportName.Equals(transport.GetName()));

            if (!(res is null))
            {
                return;
            }
            var tobserver = new InputObserver <Message>(transport.GetName());

            tobserver.Subscribe(transport);
            tobserver.NextReceived      += OnNext;
            tobserver.Completed         += OnCompleted;
            tobserver.ExceptionReceived += OnException;
            observers.Add(tobserver);
        }