Example #1
0
        public MainWindow(ClientSettingsDto settings)
        {
            InitializeComponent();
            status = SBClientStatuses.WaitingForFile;

            // Неплохое решение насчет передачи Экшена UpdateProgress для апдейта прогрес-бара,
            // однако я бы лучше сделал подписку на событие, потому что тогда SBClientManager делает слишком много вещей.
            _messageClient = new SBClientManager(settings, new ConsoleLogger(), "MyClient1");
            _messageClient.FilePartSentNotify += UpdateProgress;

            mainTimer = new Timer(CheckServerStatus);
            mainTimer.Change(0, settings.StatusSendPeriodMs);
            _brokerMessageSender = new BrokerMessageSender(_messageClient);
        }
Example #2
0
 public BrokerMessageSender(SBClientManager messageClient)
 {
     _messageClient = messageClient ?? throw new ArgumentNullException(nameof(messageClient));
 }