Esempio n. 1
0
        private void OnClientConnected(object sender, EventArgs e)
        {
            int reqid      = 1;
            int responseid = 2;
            SerializableDictionary <int, string> aa = new SerializableDictionary <int, string>();

            aa.Add(1, "param_1");
            Random r = new Random();

            RequestType t = RequestType.Connect;

            RIPMessage alertData = PrepareEvent("moti", "oleg", reqid, responseid, t, aa);

            alertData.EventData = DateTime.Now.ToString();
            _proxy.Publish(alertData, "RegisterForAnyEvents");
            _eventCounter += 1;
        }
Esempio n. 2
0
        private RIPMessage PrepareEvent(string sender, string receiver, int reqId, int responseId, RequestType type, SerializableDictionary <int, string> data)
        {
            RIPMessage e = new RIPMessage(new object());

            RequestMessage msg = new RequestMessage()
            {
                SenderID      = sender,
                ReceiverID    = receiver,
                TimeOfSending = DateTime.Now,
                RequestID     = reqId,
                RequestType   = type,
                DataParams    = data,
            };

            //msg.DataParams.Add(1, "dddd");
            string xmlString = GenericDataContractSerializer <RequestMessage> .SerializeObject(msg);

            e.Request = xmlString;
            return(e);
        }
Esempio n. 3
0
        public void Publish(RIPMessage e, String topicName)
        {
            if (e != null)
            {
                int itemNum = (lstEvents.Items.Count < 1) ? 0 : lstEvents.Items.Count;
                lstEvents.Items.Add(itemNum.ToString());

                RequestMessage p = GenericDataContractSerializer <RequestMessage> .DeserializeXml(e.Request);

                //    lstEvents.Items[itemNum].SubItems.AddRange(new string[] { "sender id : " + p.SenderID + ", receiver id : " + p.ReceiverID  + ", req type is : " +
                //                                                              p.RequestType.ToString() + " data : " +p.DataParams[1]  , e.EventData });

                lstEvents.Items[itemNum].SubItems.AddRange(new string[] { "sender id : " + p.SenderID, ", receiver id : " + p.ReceiverID, ", req type is : " +
                                                                          p.RequestType.ToString(), " data : " + p.DataParams[1], e.EventData });



                _eventCount           += 1;
                txtAstaEventCount.Text = _eventCount.ToString();
            }
        }
Esempio n. 4
0
        private void T_Tick(object sender, EventArgs e)
        {
            try
            {
                int reqid      = 1;
                int responseid = 2;
                SerializableDictionary <int, string> aa = new SerializableDictionary <int, string>();
                aa.Add(1, "param_1");
                Random r = new Random();

                RequestType t = (RequestType)r.Next(2, 6);

                RIPMessage alertData = PrepareEvent("moti", "oleg", reqid, responseid, t, aa);
                alertData.EventData = DateTime.Now.ToString();
                _proxy.Publish(alertData, "RequestMessage");
                _eventCounter     += 1;
                txtEventCount.Text = _eventCounter.ToString();
            }
            catch { }
            t.Enabled = false;
        }
Esempio n. 5
0
        void SendEvent(object sender, EventArgs e)
        {
            try
            {
                string request = "RequestMessage";
                if (string.IsNullOrEmpty(request))
                {
                    MessageBox.Show("Please Enter a request ");
                    return;
                }
                int reqid      = 1;
                int responseid = 2;
                SerializableDictionary <int, string> aa = new SerializableDictionary <int, string>();
                aa.Add(1, "requested message");
                RIPMessage alertData = PrepareEvent(txtEventData.Text, "oleg", reqid, responseid, RequestType.Ciao, aa);

                _proxy.Publish(alertData, request);
                _eventCounter     += 1;
                txtEventCount.Text = _eventCounter.ToString();
            }
            catch { }
        }
Esempio n. 6
0
        public void Publish(RIPMessage e, string request)
        {
            List <IPublishing> Clients = Filter.Instance.GetClients(request);

            if (Clients == null)
            {
                return;
            }

            Type       type = typeof(IPublishing);
            MethodInfo publishMethodInfo = type.GetMethod("Publish");

            foreach (IPublishing Client in Clients)
            {
                try
                {
                    publishMethodInfo.Invoke(Client, new object[] { e, request });
                }
                catch
                {
                }
            }
        }