Exemplo n.º 1
0
        private void ProcessIncomingData(byte[] buffer, int count)
        {
            Debug.Log("receiving data " + buffer.Length + " : " + count);
            string str = Encoding.UTF8.GetString(buffer, 0, count);

            mainContext.Post(_ => OnMessage.Invoke(str), null);
        }
Exemplo n.º 2
0
        public async Task Receive()
        {
            if (!IsConnecting)
            {
                throw new InvalidOperationException();
            }

            try
            {
                var stream = TcpClient.GetStream();

                while (stream.DataAvailable)
                {
                    var reader = new StreamReader(stream, Encoding.UTF8);

                    var str = await reader.ReadLineAsync();

                    mainContext.Post(_ => OnMessage.Invoke(str), null);
                }
            }
            catch (Exception ex)
            {
                throw new ApplicationException("Attempt to receive failed.", ex);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="buffer"></param>
        /// <param name="offset"></param>
        /// <param name="length"></param>
        protected override void OnBytesRead(byte[] buffer, int offset, int length)
        {
            for (var i = offset; i < offset + length; i++)
            {
                m_messageData.WriteByte(buffer[i]);
            }

            do
            {
                if (m_messageLength == -1 && m_messageData.Count > 3)
                {
                    m_messageLength = m_messageData.ReadInt();
                }
                if (m_messageLength != -1 && m_messageId == -1 && m_messageData.Count > 3)
                {
                    m_messageId = m_messageData.ReadInt();
                }
                if (m_messageLength != -1 && m_messageId != -1 && m_messageData.Count >= m_messageLength)
                {
                    var message = MessageBuilder.BuildMessage(m_messageId, m_messageData.ReadBytes(m_messageLength));

                    OnMessageEvent?.Invoke(message);

                    m_messageId     = -1;
                    m_messageLength = -1;
                }
            }while ((m_messageLength == -1 || m_messageId == -1) && m_messageData.Count > 3);
        }
Exemplo n.º 4
0
 public void Log(string msg)
 {
     _Messages.Insert(0, new Message()
     {
         Timestamp = DateTime.UtcNow,
         Content   = msg
     });
     OnMessageEvent?.Invoke(this, new Ps2EventArgs <string>(msg));
 }
Exemplo n.º 5
0
 protected override void WndProc(ref Message m)
 {
     if (m.Msg == WM_CLOSE)
     {
         Application.ExitThread();
     }
     OnMessageEvent?.Invoke(ref m);
     base.WndProc(ref m);
 }
Exemplo n.º 6
0
        private void Update()
        {
            if (_messageQueue.Count <= 0)
            {
                return;
            }

            lock (_messageQueue)
            {
                while (_messageQueue.Count > 0)
                {
                    OnMessageEvent?.Invoke(_messageQueue.Dequeue());
                }
            }
        }
            private void Update()
            {
                if (_messageQueue.Count <= 0)
                    return;

                lock (_messageQueue)
                {
                    // Notify about new messages
                    while (_messageQueue.Count > 0)
                    {
                        if (OnMessageEvent != null)
                        {
                            OnMessageEvent.Invoke(_messageQueue.Dequeue());
                        }
                    }
                }
            }
Exemplo n.º 8
0
        async Task NetworkStreamHandler(TcpClient client)
        {
            while (client.Connected)
            {
                using (var stream = client.GetStream())
                {
                    var reader = new StreamReader(stream, Encoding.UTF8);

                    while (!reader.EndOfStream)
                    {
                        // TODO : currently, supported string decode only
                        var str = await reader.ReadLineAsync();

                        mainContext.Post(_ => OnMessage.Invoke(str), null);
                    }
                }
            }

            // Disconnected
        }
Exemplo n.º 9
0
        private void OnEventReceived(SseEvent @event)
        {
            switch (@event.@event)
            {
            case "message":
                OnMessageEvent?.Invoke(@event.jsonData);
                break;

            case "subscription":
                OnSubscriptionEvent?.Invoke(@event.jsonData);
                break;

            case "welcome":
                // do nothing
                // (used by the SseSocket to detect
                // connection establishment)
                break;

            case "heartbeat":
                // do nothing
                break;

            case "end-connection":
                // do nothing
                // (used by the SseSocket to detect
                // server-requested disconnection)
                break;

            default:
                Debug.LogWarning(
                    "[Unisave] Unknown broadcasting event received: " +
                    @event.@event
                    );
                break;
            }
        }
 internal void FireOnMessageEvent(string type, object message)
 {
     OnMessageEvent?.Invoke(type, message);
 }
Exemplo n.º 11
0
        //rename stuff

        private static void UdpMessageRecived(string message)
        {
            System.Diagnostics.Debug.WriteLine(message);
            OnMessageEvent.Invoke(message);
        }
Exemplo n.º 12
0
 public virtual void OnLidarMessage(string message, int line)
 {
     OnMessageEvent?.Invoke(this, new LidarMessageArgs {
         Value = message, Line = line
     });
 }