Beispiel #1
0
        private static void frontend_ReceiveReady(Object sender, SocketEventArgs e)
        {
            ZmqMessage reqMsg = e.Socket.ReceiveMessage();
            Console.WriteLine("[frontend] Received {0} bytes {1} frames", reqMsg.TotalSize, reqMsg.FrameCount);

            backend.SendMessage(reqMsg);
        }
Beispiel #2
0
 private void ReceiverPollInHandler(object s, SocketEventArgs e)
 {
     //  Process task
     int workload = Convert.ToInt32(e.Socket.Receive(Encoding.Unicode));
     //  Do the work
     Thread.Sleep(workload);
     //  Send results to sink
     sender.Send("", Encoding.Unicode);
     Console.WriteLine(".");
     Console.Clear();
 }
Beispiel #3
0
        private static void PollInHandler(object sender, SocketEventArgs e)
        {
            var reply = e.Socket.Receive(Encoding.Unicode);

            if (Int32.Parse(reply) == sequence)
            {
                Console.WriteLine("Server replied OK ({0})", reply);
                retriesLeft = requestRetries;
                expectReply = false;
            }
            else
            {
                Console.WriteLine("Malformed reply from server: {0}", reply);
            }

        }
Beispiel #4
0
 private void ControllerPollInHandler(object s, SocketEventArgs e)
 {
     //  Any waiting controller command acts as 'KILL'
     Console.WriteLine("Killed...");
     killCommand = true;
 }
Beispiel #5
0
 void _frontendSocket_ReceiveReady(object sender, SocketEventArgs e)
 {
     System.Diagnostics.Debug.WriteLine("Frontend recv ready");
     RelayMessage(e.Socket, _backendSocket);
 }
Beispiel #6
0
 private static void AddSubscriberCountChannelReceiveReady(object sender, SocketEventArgs e)
 {
     WritelineToLogFile("AddSubscriberCountChannelReceiveReady");
     var messageReceiver = new MessageReceiver();
     SubscriberCount = SubscriberCount + messageReceiver.ReceiveMessage((ZmqSocket)sender);
 }
Beispiel #7
0
 private static void FrontendReceiveReady(object sender, SocketEventArgs e)
 {
     WritelineToLogFile("FrontendReceiveReady");
     e.Socket.Forward(backend);
 }
Beispiel #8
0
 static void repSocket_ReceiveReady(object sender, SocketEventArgs e)
 {
     var reqMsg = e.Socket.Receive(Encoding.UTF8);
     Console.WriteLine("REP, received: " + reqMsg);
 }
Beispiel #9
0
        /// <summary>
        /// This is called when a new historical data request or data push request is made.
        /// </summary>
        private void socket_ReceiveReady(object sender, SocketEventArgs e)
        {
            //Here we process the first two message parts: first, the identity string of the client
            string requesterIdentity = e.Socket.Receive(Encoding.UTF8);

            //second: the string specifying the type of request
            string text = e.Socket.Receive(Encoding.UTF8);
            if (text == "HISTREQ") //the client wants to request some data
            {
                AcceptHistoricalDataRequest(requesterIdentity, e.Socket);
            }
            else if (text == "HISTPUSH") //the client wants to push same data into the db
            {
                AcceptDataAdditionRequest(requesterIdentity, e.Socket);
            }
            else if (text == "AVAILABLEDATAREQ") //client wants to know what kind of data we have stored locally
            {
                AcceptAvailableDataRequest(requesterIdentity, e.Socket);
            }
            else
            {
                Log(LogLevel.Info, "Unrecognized request to historical data broker: " + text);
            }
        }
Beispiel #10
0
        private void HandleMessages(object origin, SocketEventArgs args)
        {
            var socket1 = args.Socket;

            var msg = socket1.ReceiveMessage().Select(f => (byte[])f).ToList();
            if (msg == null || msg.Count < 3)
                return; // Interrupted

            if (this._verbose)
            {
                Console.WriteLine("Broker: received message:\n{0}", msg.ToStringBlob());
            }

            byte[] sender = msg[0];
            string header = msg[2].ToUnicodeString();

            if (MDP.C_CLIENT.Equals(header))
            {
                this.ProcessClient(sender, msg);
            }
            else if (MDP.W_WORKER.Equals(header))
                this.ProcessWorker(sender, msg);
            else
            {
                var b = new StringBuilder();
                socket1.Send(new byte[] {0x0}, 1, SocketFlags.None);
                foreach (var item in msg)
                    b.AppendLine(item.ToUnicodeString());
                Console.WriteLine("E: invalid message with header {1}:\n{0}", b, header);
            }
        }
Beispiel #11
0
 private static void router_SendReady(Object sender, SocketEventArgs e)
 {
     var Msg = new ZmqMessage();
     Msg.Append(Encoding.UTF8.GetBytes(String.Format(" Hi {0}.", mesageNum)));
     mesageNum++;
     e.Socket.SendMessage(Msg);
 }
Beispiel #12
0
 void subscribeSocket_ReceiveReady(object sender, SocketEventArgs e)
 {
     var message = e.Socket.ReceiveMessage();
     publishSocket.SendMessage(message);
 }
Beispiel #13
0
        void publishSocket_ReceiveReady(object sender, SocketEventArgs e)
        {
            var message = e.Socket.ReceiveMessage();
            if (ProcessedMessage != null)
            {
                string address = subscribeSocket.Receive(Encoding.ASCII);
                string typename = subscribeSocket.Receive(Encoding.Unicode);
                string serialized = subscribeSocket.Receive(Encoding.Unicode);
                Type coreType = Type.GetType(typename + ", Succubus.Core");

                object coreMessage = JsonFrame.Deserialize(serialized, coreType);
                if (coreMessage != null)
                {
                    ProcessedMessage(this, new ProcessedMessageEventArgs
                    {
                        Address = address,
                        Message = coreMessage,
                        RawJson = serialized

                    });
                }
            }
            subscribeSocket.SendMessage(message);
        }
Beispiel #14
0
 private void FrontEndReady(object sender, SocketEventArgs e)
 {
 }
Beispiel #15
0
 private void BackEndReady(object sender, SocketEventArgs e)
 {
 }
Beispiel #16
0
 static void pubSocket_SendReady(object sender, SocketEventArgs e)
 {
     var zmqMessage = new ZmqMessage();
     if (nbSubscribersConnected < 2)
     {
         zmqMessage.Append(Encoding.UTF8.GetBytes("Sync"));
         zmqMessage.Append(Encoding.UTF8.GetBytes(Pipe.PubSubControlFrontAddressClient));
         Thread.Sleep(200);
         Console.WriteLine("Publishing: Sync");
     }
     else
     {
         zmqMessage.Append(Encoding.UTF8.GetBytes("Data"));
         var data = "MYDATA"; //BuildDataToPublish();
         if (!string.IsNullOrEmpty(data))
         {
             zmqMessage.Append(Encoding.UTF8.GetBytes(data));
             Thread.Sleep(200);
             Console.WriteLine("Publishing (Data): " + data);
         }
     }
     e.Socket.SendMessage(zmqMessage);
 }
Beispiel #17
0
 void _frontendSocket_SendReady(object sender, SocketEventArgs e)
 {
     System.Diagnostics.Debug.WriteLine("Frontend send ready {0}", e.Socket.LastEndpoint);
     //RelayMessage(e.Socket, _backendSocket);
 }
Beispiel #18
0
        private static void worker_ReceiveReady(Object sender, SocketEventArgs e)
        {
            var responseMsg = new ZmqMessage();
            ZmqMessage message = e.Socket.ReceiveMessage(responseMsg);

            Console.WriteLine("[worker] Received {0} bytes {1} frames", message.TotalSize, message.FrameCount);

            responseMsg.Append(Encoding.UTF8.GetBytes(". Received!"));

            //Thread.Sleep(300);

            Console.WriteLine("[worker-responce] Sent {0} bytes {1} frames", responseMsg.TotalSize, responseMsg.FrameCount);

            e.Socket.SendMessage(responseMsg);
        }
Beispiel #19
0
 private static void router_ReceiveReady1(Object sender, SocketEventArgs e)
 {
     ZmqMessage reqMsg = e.Socket.ReceiveMessage();
     Console.WriteLine("[router] Received {0} bytes {1} frames", reqMsg.TotalSize, reqMsg.FrameCount);
 }
 /// <summary>
 /// Not implemented for the <see cref="ForwarderDevice"/>.
 /// </summary>
 /// <param name="args">A <see cref="SocketEventArgs"/> object containing the poll event args.</param>
 protected override void BackendHandler(SocketEventArgs args)
 {
 }
Beispiel #21
0
 protected override void FrontendHandler(SocketEventArgs args)
 {
     Console.WriteLine("In forwarder" + args.ToString());
     this.FrontendSocket.Forward(this.BackendSocket);
 }
Beispiel #22
0
 static void frontend_ReceiveReady(object sender, SocketEventArgs e)
 {
     e.Socket.Forward(backend);
 }
Beispiel #23
0
 static void repSocket_ReceiveReady(object sender, SocketEventArgs e)
 {
     var reqMsg = e.Socket.Receive(Encoding.UTF8);
     DisplayRepMsg("REP, received: " + reqMsg);
 }
Beispiel #24
0
 static void repSocket_SendReady(object sender, SocketEventArgs e)
 {
     DisplayRepMsg("REP, sending: Sync OK");
     e.Socket.Send(Encoding.UTF8.GetBytes("Sync OK"));
     nbSubscribersConnected++;
 }
 /// <summary>
 /// Forwards requests from the frontend socket to the backend socket.
 /// </summary>
 /// <param name="args">A <see cref="SocketEventArgs"/> object containing the poll event args.</param>
 protected override void FrontendHandler(SocketEventArgs args)
 {
     FrontendSocket.Forward(BackendSocket);
 }
Beispiel #26
0
 static void pubSocket_SendReady(object sender, SocketEventArgs e)
 {
     var zmqMessage = new ZmqMessage();
     if (nbSubscribersConnected < options.nbExpectedSubscribers)
     {
         zmqMessage.Append(Encoding.UTF8.GetBytes("Sync"));
         zmqMessage.Append(Encoding.UTF8.GetBytes(options.repEndpoint));
         Thread.Sleep(options.delay);
         Console.WriteLine("Publishing: Sync");
     }
     else
     {
         zmqMessage.Append(Encoding.UTF8.GetBytes("Data"));
         var data = BuildDataToPublish();
         if (!string.IsNullOrEmpty(data))
         {
             zmqMessage.Append(Encoding.UTF8.GetBytes(data));
             Thread.Sleep(options.delay);
             Console.WriteLine("Publishing (Data): " + data);
         }
     }
     e.Socket.SendMessage(zmqMessage);
 }
Beispiel #27
0
 // Weather server event
 public static void SubscriberPollInHandler(object sender, SocketEventArgs e)
 {
     e.Socket.Receive(Encoding.Unicode);
     Console.WriteLine("Process Weather");
 }
        private void OnZmqReceive(object sender, SocketEventArgs e, ManualResetEvent waitForMessage1)
        {
            var socket = e.Socket;
            var received = socket.Receive();
            _messNumber++;
            var position = 0;
            byte b;
            while (!(position >= received.Length))
            {
                b = received[position];
                position++;
            }//read stream
            if (received.Length == 4)
            {

                Console.WriteLine("stop on zmq endpoing" );
                waitForMessage1.Set();

            }

              //  stream.Dispose();
        }