Esempio n. 1
0
        public override void SendData()
        {
            logger.Debug($"Preparing Node Configuration message");

            logger.Debug("Waiting for the client to perform registration");
            while (Client.ConnectionState != ConnectionState.Registered)
            {
                Thread.Sleep(100);
            }
            logger.Debug("Completed client registration on the agent");

            List <ClientNodeConfig> nodeConfigurationList = (from n in Client.Session.ManagedNodes.Nodes.Values
                                                             where (n.NodeConfig.Agent == Client.Address) && n.NodeConfig.Enabled
                                                             select n.NodeConfig).ToList();

            NodeConfigurationMessage nodeConfiguration = new NodeConfigurationMessage();

            nodeConfiguration.NodeConfigurationList = nodeConfigurationList.ToArray <ClientNodeConfig>();

            UpdateEventArgs args = new UpdateEventArgs()
            {
                MessageType   = MessageType.NodeConfiguration,
                CorrelationId = nodeConfiguration.CorrelationId,
                Data          = nodeConfiguration,
            };

            OnUpdate(this, args);

            Enabled = false;
        }
Esempio n. 2
0
 public override void OpenEnvelope()
 {
     try
     {
         NodeConfigurationMessage = Message.GetPayload <NodeConfigurationMessage>();
     }
     catch (Exception ex)
     {
         logger.Error(ex, $"{Client.SocketConnection.ConnectionInfo.Id} Cannot deserialize NodeList message");
     }
 }