Пример #1
0
        public void can_send_a_message()
        {
            var rvt = Rv.IntraProcessTransport.UniqueInstance;

            var q        = Rv.Queue.Default;
            var listener = new Rv.Listener(q, rvt, "say.hello", null);

            Rv.Dispatcher dis = null;
            try
            {
                // start a listener that sets the event when it gets a message
                Rv.Message got = null;
                var        evt = new AutoResetEvent(false);
                listener.MessageReceived += (sender, args) => { got = args.Message; evt.Set(); };
                dis = new Rv.Dispatcher(q, 10.0);

                Message input = HelloWorldMessage("/say/hello");
                using (var trans = new RvMessaging(new Uri("rv+ipc://localhost"), rvt))
                    trans.Send(input);

                Assert.IsTrue(evt.WaitOne(2000), "timeouted waiting for RV message");
                Assert.IsNotNull(got);
            }
            finally
            {
                dis.Destroy();
                listener.Destroy();
            }
        }
Пример #2
0
 /// <summary>
 /// Listener Set
 /// </summary>
 private void TibListenerSetting()
 {
     try
     {
         OnMessageReceived += new MessageReceivedEventHandler(__OnMessageReceived);
         tibListener        = new Listener(Queue.Default, OnMessageReceived, tibTrans, LOCAL_SUBJECT, "");
     }
     catch (System.Exception ex)
     {
         CLogManager.Instance.Log(new CExceptionLogFormat(Catagory.Error, "EMP", ex));
         CLogManager.Instance.Log(new CStatusLogFormat(Catagory.Error, "OGS", "TIB", "TibListenerSetting \r\n" + ex.ToString()));
     }
 }
Пример #3
0
 private void TibListenerSetting_ADD_FPC()
 {
     try
     {
         if (OnMessageReceived != null)
         {
             tibListener_TSM = new Listener(Queue.Default, OnMessageReceived, tibTrans, LOCAL_SUBJECT.Replace("HACFOG", "HACFDI"), "");
             tibListener_EXT = new Listener(Queue.Default, OnMessageReceived, tibTrans, LOCAL_SUBJECT.Replace("HACFOG", "HACFVI"), "");
             tibListener_INT = new Listener(Queue.Default, OnMessageReceived, tibTrans, LOCAL_SUBJECT.Replace("HACFOG", "HACHPT"), "");
         }
     }
     catch (System.Exception ex)
     {
         CLogManager.Instance.Log(new CExceptionLogFormat(Catagory.Error, "EMP", ex));
         CLogManager.Instance.Log(new CStatusLogFormat(Catagory.Error, "OGS", "TIB", "TibListenerSetting \r\n" + ex.ToString()));
     }
 }
Пример #4
0
        public static void Dispose(this Rv.Listener listener)
        {
            if (listener == null)
            {
                return;
            }

            try
            {
                listener.Destroy();
            }
            catch
            {
                // Dispose methods must not throw exceptions
            }
            GC.SuppressFinalize(listener);  // RV does not do this, so we have to
        }