Exemple #1
0
        void AsyncReceiveCallback(IAsyncResult ar)
        {
            //handler.Log("ReceiveCallback");

            try
            {
                // Read data from the remote device.
                int bytesRead = _socket.EndReceive(ar);
                if (bytesRead == 0)
                {
                    Disconnect();
                }
                else
                {
                    PacketData data = new PacketData(readBuffer, bytesRead);

                    // Process message here
                    ProcessMessageDelegate process = (ProcessMessageDelegate)ar.AsyncState;
                    process(data);

                    ReadNext();
                }
            }
            catch (Exception e)
            {
                handler.Log(e.ToString());
                Disconnect();
            }
        }
        public static void Main()
        {
            ProcessMessageDelegate pmd1, pmd2, pmd3, pmd4;

            //Here we create the delegate object pmd1 that references
            // the method SayHello:
            pmd1 = new ProcessMessageDelegate(Messages.SayHello);

            //Here we create an instance of Messages.
            Messages msg = new Messages();

            //Here we create the delegate object pmd2 that references
            //the method SayGoodbye:
            pmd2 = new ProcessMessageDelegate(msg.SayGoodbye);
            //Here we compose delegates pmd1 and pmd2
            pmd3 = pmd1 + pmd2;

            //Here we remove pmd2 from the composed delegate, leaving pmd3,
            // which calls only the method SayGoodbye:
            pmd4 = pmd3 - pmd2;

            Console.WriteLine("Invoking delegate pmd1:");
            pmd1("pmd1");
            Console.WriteLine("Invoking delegate pmd2:");
            pmd2("pmd2");
            Console.WriteLine("Invoking delegate pmd3:");
            pmd3("pmd3");
            Console.WriteLine("Invoking delegate pmd4:");
            pmd4("pmd4");
            Console.ReadLine();
        }
Exemple #3
0
 protected static void RaiseEvent(ProcessMessageDelegate handler, IQMessageArgs args)
 {
     if (handler != null)
     {
         handler(args);
     }
 }
Exemple #4
0
        public static void Main()
        {
            ProcessMessageDelegate pmd1, pmd2, pmd3, pmd4;

            // Here we create the delegate object pmd1 that references the method SayHello:
            pmd1 = new ProcessMessageDelegate(Messages.SayHello);

            // Here we create an instance of Messages.
            Messages msg = new Messages();

            // Here we create the delegate object pmd2 that references the method SayGoodbye:
            pmd2 = new ProcessMessageDelegate(msg.SayGoodbye);

            // Here we compose delegates pmd1 and pmd2
            pmd3 = pmd1 + pmd2;

            // Here we remove pmd2 from the composed delegate, leaving pmd3,which calls only the method SayGoodbye:
            pmd4 = pmd3 - pmd2;

            Console.WriteLine("Invoking delegate pmd1:");
            pmd1("pmd1");
            Console.WriteLine("Invoking delegate pmd2:");
            pmd2("pmd2");
            Console.WriteLine("Invoking delegate pmd3:");
            pmd3("pmd3");
            Console.WriteLine("Invoking delegate pmd4:");
            pmd4("pmd4");

            Console.WriteLine("Press enter to close...");
            Console.ReadLine();
        }
Exemple #5
0
        public void Open(string selectedPort, ProcessMessageDelegate processMessage)
        {
            serialPortComm.Open(selectedPort, 115200, ReceivedMessage);
            State          = EMgrState.IDLE;
            TimeoutCounter = 0;

            ProcessMessage = processMessage;
        }
Exemple #6
0
        private void SplashBaseControl_Shown(object sender, EventArgs e)
        {
            SplashBaseComs coms = new SplashBaseComs();

            myDelegate          = new ProcessMessageDelegate(ProcessMessage);
            thread              = new Thread(new ThreadStart(ReceiveMessage));
            thread.IsBackground = true;
            thread.Start();

            coms.BroadcastPing();
        }
Exemple #7
0
 private void ListenToQueue()
 {
     while (true)
     {
         using (Message msg = toBackend.Receive())
         {
             log.Info("ListenToQueue: New message received.");
             ProcessMessageDelegate process = ProcessMessage;
             process.Invoke(msg);
         }
     }
 }
        protected MessageInterceptorBase(IntPtr ownerWindowHwnd, ProcessMessageDelegate processMessage, IntPtr moduleHandle, uint threadId)
        {
            if (processMessage == null)
            {
                throw new NullReferenceException("processMessage");
            }

            _processMessage  = processMessage;
            _ownerWindowHwnd = ownerWindowHwnd;
            _moduleHandle    = moduleHandle;
            _threadId        = threadId;

            _hookProc = HookProcInternal;
        }
        public async Task ExecutePipeline(IConsumeContext context, Type typeObject, Envelope envelope)
        {
            // Build process message pipeline
            ProcessMessageDelegate current = ProcessMessage;

            for (int i = _configuration.MessageProcessingMiddleware.Count; i > 0; i--)
            {
                var middleware = (IProcessMessageMiddleware)_container.GetInstance(_configuration.MessageProcessingMiddleware[i - 1]);
                middleware.Next = current;
                current         = middleware.Process;
            }
            // Execute first delegate
            await current(context, typeObject, envelope);
        }
Exemple #10
0
 public Connection(string ipadr, int port, ProcessErrorDelegate processError, ProcessMessageDelegate processMessage)
 {
     m_address        = IPAddress.Parse(ipadr);
     m_port           = port;
     m_client         = new TcpClient();
     m_stream         = null;
     m_error          = Error.NoError;
     m_readbuf        = null;
     m_writebuf       = null;
     m_processError   = processError;
     m_processMessage = processMessage;
     m_state          = State.Init;
     m_readbuflock    = new object();
     m_writebuflock   = new object();
 }
Exemple #11
0
 public Connection( string ipadr, int port, ProcessErrorDelegate processError, ProcessMessageDelegate processMessage)
 {
     m_address = IPAddress.Parse( ipadr);
     m_port = port;
     m_client = new TcpClient();
     m_stream = null;
     m_error = Error.NoError;
     m_readbuf = null;
     m_writebuf = null;
     m_processError = processError;
     m_processMessage = processMessage;
     m_state = State.Init;
     m_readbuflock = new object();
     m_writebuflock = new object();
 }
 public void ConsumeTopicMessages(ProcessMessageDelegate msgHandler)
 {
     try
     {
         bool keepReading = true;
         do
         {
             StringBuilder messageText = new StringBuilder();
             mqProxy.ReceiveMessageWithWait(producer_consumer_Handle, sessionHandle,
                 ref messageText);
             keepReading = msgHandler(messageText.ToString());
         } while (keepReading);
     }
     catch (OpenMQException ex)
     {
         DestroyTopicConnection();
         Console.WriteLine(ex);
     }
 }
Exemple #13
0
		public static CometRequest Invoke(string url, ProcessMessageDelegate ProcessMessage, Action onComplete)
		{
			
			IFrameElement hiddenIFrame = (IFrameElement)Document.CreateElement("IFRAME");
			CometRequest cometRequest = new CometRequest(hiddenIFrame);
			Action notifyComplete = new Action
			(
				delegate() 
				{
					cometRequest.NotifyComplete();
				}
			);
			cometRequest.OnCometRequestComplete = onComplete;
			Script.Literal("{0}.receive = function(message){{{1}(unescape(message));}};", hiddenIFrame, ProcessMessage);
			Script.Literal("{0}.notifyComplete = {1};", hiddenIFrame, notifyComplete);
			hiddenIFrame.Src = url;
			hiddenIFrame.Style.Visibility = "hidden";
			Document.Body.AppendChild(hiddenIFrame);
			return cometRequest;
		}
 public GetMessageInterceptor(IntPtr ownerWindowHwnd, ProcessMessageDelegate processMessage, IntPtr moduleHandle, uint threadId)
     : base(ownerWindowHwnd, processMessage, moduleHandle, threadId)
 {
 }
 protected MessageInterceptorBase(IntPtr ownerWindowHwnd, ProcessMessageDelegate processMessage)
     : this(ownerWindowHwnd, processMessage, IntPtr.Zero, WinApi.Kernel32.GetCurrentThreadId())
 {
 }
 public void Register(int messageType,
                      ProcessMessageDelegate processMessage)
 {
     methods[messageType] = processMessage;
 }
Exemple #17
0
 public static extern int UWK_Initialize(LogCallbackDelegate logcb, LogErrorDelegate errorcb, ProcessMessageDelegate processcb, IntPtr initJson);
Exemple #18
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ClientSession"/> class.
 /// </summary>
 /// <param name="processMessage">Delegate to invoke to process received messages</param>
 public ClientSession(ProcessMessageDelegate processMessage)
 {
     this.processMessage = processMessage;
     this.SessionId      = SsessionIdProvider.NextUniqueId();
     this.FriendlyName   = "sid-" + this.SessionId;
 }
 public GetMessageInterceptor(IntPtr ownerWindowHwnd, ProcessMessageDelegate processMessage) : base(ownerWindowHwnd, processMessage)
 {
 }
Exemple #20
0
 public static extern int UWK_Initialize(LogCallbackDelegate logcb, LogErrorDelegate errorcb, ProcessMessageDelegate processcb, IntPtr initJson);