Пример #1
0
        public void Initialize(object customData)
        {
            var initdata = customData as RoomSchedulerInitData;

            if (initdata == null)
            {
                throw new MissingFieldException("Room Schedule Manager requires Custom Initdata 'RoomSchedulerInitData'");
            }

            _logger        = initdata.Logger;
            _customMessage = initdata.CustomMessage;
            _deviceId      = initdata.DeviceId;

            FusionScheduler = new FusionScheduler(_logger, _networkId, _controlControlSystem,
                                                  initdata.RoomName,
                                                  initdata.FusionConnection,
                                                  initdata.MeetingRegEx);

            FusionScheduler.OnlineStatusChange += ReportOnlineStatus;
            FusionScheduler.MeetingUpdate      += MeetingUpdate;

            FusionReporter = new FusionReporter(_logger, initdata.FusionConfig, initdata.StateController, FusionScheduler, _customMessage);
            FusionReporter.Initialize();

            _logger.InfoFormat(":{0}: Room Scheduling.  Room:{1}  Connection:{2}", LogTag, initdata.RoomName, initdata.FusionConnection);
        }
Пример #2
0
        public virtual bool SendCustom(ICustomMessage message, DeliveryType deliveryType, int channel)
        {
            if (message == null)
            {
                throw new ArgumentNullException(nameof(message));
            }

            ChannelDescriptor.CheckChannelValue(channel);

            using (var rawMessage = this.Parent.CreateMessage())
            {
                rawMessage.DeliveryType = deliveryType;
                rawMessage.Channel      = channel;

                using (WardenStreamWriter sw = new WardenStreamWriter(rawMessage.BaseStream, true))
                {
                    message.WriteTo(new WriteFormatterInfo(sw, this.configuration.Serializer));
                }

                UdpSendStatus result = SendRawMessage(new Warden.Networking.Udp.Messages.MessageInfo(rawMessage,
                                                                                                     deliveryType, channel));

                return(result != UdpSendStatus.Failed);
            }
        }
Пример #3
0
        public bool SendReliable(ICustomMessage message)
        {
            if (!this.Connected)
            {
                return(false);
            }

            TcpRawMessage rawMessage = Parent.CreateMessage();

            using (WardenStreamWriter sw = new WardenStreamWriter(rawMessage.BaseStream, true))
            {
                message.WriteTo(new WriteFormatterInfo(sw, configuration.Serializer));
            }

            if (rawMessage.Length >= configuration.CompressionThreshold)
            {
                logger.Trace($"Message {message} size exceeds compression threshold {configuration.CompressionThreshold}, compressing it");
                using (rawMessage)
                {
                    var compressedMessage = rawMessage.Compress(CompressionLevel.Optimal);
                    logger.Trace($"Compressing {rawMessage} to {compressedMessage}");
                    compressedMessage.Position = 0;
                    SendRawMessage(compressedMessage);
                }
            }
            else
            {
                SendRawMessage(rawMessage);
            }

            return(true);
        }
Пример #4
0
 void SendMessageCustom(ICustomMessage message, DeliveryType deliveryType, int channel)
 {
     this.logger.Trace($"{this} sending {message}");
     if (!this.advancedDeliveryConnection.SendCustom(message, deliveryType, channel))
     {
         throw new RemotingException("Transport connection is closed");
     }
 }
Пример #5
0
 public SignUpController(IUsuarioService usuarioService, ICustomMessage customMessasge, ICriptografia criptografia, IJwt jwt, IUnitOfWork uokOfWork)
 {
     _customMessasge = customMessasge;
     _criptografia   = criptografia;
     _jwt            = jwt;
     _uokOfWork      = uokOfWork;
     _usuarioService = usuarioService;
 }
Пример #6
0
 //to be modified for all
 public void FillMessageData(ICustomMessage msg)
 {
     this.labelSnippet.Text     = msg.Snippet;
     this.labelFromText.Text    = msg.Sender;
     this.labelSubjectText.Text = msg.Subject;
     this.content = msg.Content;
     this.sender  = msg.Sender;
     this.subject = msg.Subject;
 }
Пример #7
0
 public bool SendReliable(ICustomMessage message)
 {
     return(this.SendCustom(message, DeliveryType.ReliableOrdered, 0));
 }
Пример #8
0
 protected internal void LogMessageReceived(ICustomMessage message)
 {
     this.logger.Trace($"Received {message}");
 }
Пример #9
0
 public void Initialize(string deviceId, GenericBase customDevice, ICustomMessage messageSender)
 {
     _customMessage = messageSender;
     _deviceId      = deviceId;
 }
 public ProfileController(IUsuarioService usuarioService, ICustomMessage customMessasge)
 {
     _customMessasge = customMessasge;
     _usuarioService = usuarioService;
 }