Ejemplo n.º 1
0
        public void Publish(MessageCommandEnum messageCommand, string message, bool persistent = true)
        {
            var properties = channel.CreateBasicProperties();

            properties.Persistent = persistent;
            var messageBody = Encoding.UTF8.GetBytes(JsonSerialize(messageCommand, message));

            channel.BasicPublish(exchange: EXCHANGE_NAME, routingKey: ROUTING_KEY, basicProperties: properties, body: messageBody);
        }
Ejemplo n.º 2
0
        private string GetJsonString(MessageCommandEnum command, object data)
        {
            CommandObject obj = new CommandObject()
            {
                Command = command,
                Data    = data
            };
            var setting = new JsonSerializerSettings();

            setting.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            return(JsonConvert.SerializeObject(obj, setting));
        }
Ejemplo n.º 3
0
 protected void SendToRabbitMQ(MessageCommandEnum command, string message)
 {
     try
     {
         logger.Info("Send to RabbitMQ Server");
         client.Publish(command, message);
         logger.Info("Send to RabbitMQ Server");
     }
     catch (Exception ex)
     {
         logger.Error(ex.Message, ex);
     }
 }
Ejemplo n.º 4
0
        public string JsonSerialize(MessageCommandEnum command, object data)
        {
            CommandObject commandObject = new CommandObject()
            {
                Command = command,
                Data    = data
            };
            var config = new JsonSerializerSettings();

            config.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            return(JsonConvert.SerializeObject(new {
                Command = command,
                Data = data
            }, config));
        }
Ejemplo n.º 5
0
 private void SoketNetworkSentClient(MessageCommandEnum command, object data)
 {
     try {
         logger.Info("send to client");
         string json = GetJsonString(command, data);
         if (socketClients != null && socketClients.Count > 0)
         {
             socketClients.ForEach(s => {
                 s.Send(Encoding.ASCII.GetBytes(json));
                 logger.InfoFormat("Data: {0}", json);
             });
         }
         logger.Info("sent to client");
     } catch (Exception ex) {
         logger.Error(ex.Message, ex);
     }
 }