/// <summary>
        /// Assign connection and publish initial message if already available
        /// </summary>
        /// <param name="transmission">Open connection</param>
        internal void ExecuteAssignConnection(TcpTransmission transmission)
        {
            Logger.Log(LogLevel.Info, "Connection established on port {0}", _config.Port);
            _transmission = transmission;
            _transmission.Disconnected += Disconnected;
            _transmission.Received     += MessageReceived;

            // Configure keep alive on tcp
            if (_config.MonitoringIntervalMs > 0)
            {
                _transmission.ConfigureKeepAlive(_config.MonitoringIntervalMs, _config.MonitoringTimeoutMs);
            }
        }
Exemple #2
0
        internal void Connected()
        {
            _transmission = new TcpTransmission(_tcpClient, _validator.Interpreter, Logger.GetChild(string.Empty, typeof(TcpTransmission)));
            _transmission.Disconnected     += ConnectionClosed;
            _transmission.ExceptionOccured += OnTransmissionException;
            _transmission.Received         += MessageReceived;
            _transmission.StartReading();

            // Configure TCP keep alive
            if (Config.MonitoringIntervalMs > 0)
            {
                _transmission.ConfigureKeepAlive(Config.MonitoringIntervalMs, Config.MonitoringTimeoutMs);
            }
        }