Exemplo n.º 1
0
        public static void Send(string message, string queue)
        {
            ConnectionFactory connectionFactory = new ConnectionFactory(URI);
            NmsTemplate       template          = new NmsTemplate(connectionFactory);

            template.ConvertAndSend(queue, message);
        }
Exemplo n.º 2
0
        public void ConvertAndSend()
        {
            Assert.NotNull(connectionFactory);
            Assert.NotNull(nmsTemplate);

            string msgText = "Hello World";

            //Use with destination set at runtime
            nmsTemplate.ConvertAndSend("APP.TESTING", msgText);

            AssertRecievedHelloWorldMessage(msgText, nmsTemplate.ReceiveAndConvert("APP.TESTING"));

            //Now using default destination set via property
            nmsTemplate.DefaultDestinationName = "APP.TESTING";
            nmsTemplate.ConvertAndSend(msgText);
            AssertRecievedHelloWorldMessage(msgText, nmsTemplate.ReceiveAndConvert());
        }
 public void HandleMessage(IMessage message)
 {
     if (message == null)
     {
         throw new ArgumentException("message must not be null");
     }
     NmsTemplate.ConvertAndSend(message);
 }
 public void SendMarketData()
 {
     while (true)
     {
         IDictionary data = GenerateFakeMarketData();
         log.Info("Sending market data.");
         NmsTemplate.ConvertAndSend(data);
         log.Info("Sleeping " + sleepTimeInSeconds + " seconds before sending more market data.");
         Thread.Sleep(sleepTimeInSeconds);
     }
 }
Exemplo n.º 5
0
        /// <summary>
        /// Send log message to message queue.
        /// </summary>
        protected override void Append(LoggingEvent loggingEvent)
        {
            string text    = RenderLoggingEvent(loggingEvent);
            string message = text.Replace("(null)", "");

            if (!MessageValidation(message))
            {
                return;
            }

            bool QueueFailureCountThresholdReached = (QueueFailureCount >= m_QueueFailureCountThreshold);
            bool QueueRestoreTimeThresholdReached;

            if (!QueueFailureCountThresholdReached)
            {
                QueueRestoreTimeThresholdReached = false;
            }
            else
            {
                TimeSpan t = System.DateTime.Now - LastQueueFailureTime;
                QueueRestoreTimeThresholdReached = t.TotalSeconds > m_QueueRestoreTimeThreshold;
            }

            if (!QueueFailureCountThresholdReached || QueueRestoreTimeThresholdReached)
            {
                if (QueueRestoreTimeThresholdReached)
                {
                    // Queue Restore Time Threshold is reached.
                    // It's time to clear the failure count and direct message to queue.
                    QueueFailureCount = 0;
                    log.Debug("Queue Restore Time Threshold (" + m_QueueRestoreTimeThreshold.ToString() + ") reached. Message is directed to queue.");
                }

                try
                {
                    ConnectionFactory connectionFactory = new ConnectionFactory(m_QueueURI);
                    NmsTemplate       template          = new NmsTemplate(connectionFactory);
                    template.ConvertAndSend(m_QueueName, message);
                    QueueFailureCount = 0;
                }
                catch (Exception e)
                {
                    log.Fatal("An error occurred while sending message to queue.", e);
                    QueueHelper.RecordOriginalMessage(message);
                    QueueFailureCount++;
                    LastQueueFailureTime = DateTime.Now;
                }
            }
            else
            {
                log.Debug("Queue Failure Count Threshold (" + m_QueueFailureCountThreshold.ToString() + ") reached. Message is directed to local file. ");
                QueueHelper.RecordOriginalMessage(message);
            }
        }
        public void SendAndAsyncReceive()
        {
            SimpleMessageListenerContainer container =
                (SimpleMessageListenerContainer)applicationContext["SimpleMessageListenerContainer"];
            SimpleMessageListener listener = applicationContext["SimpleMessageListener"] as SimpleMessageListener;

            Assert.IsNotNull(container);
            Assert.IsNotNull(listener);


            NmsTemplate nmsTemplate = (NmsTemplate)applicationContext["MessageTemplate"] as NmsTemplate;

            Assert.IsNotNull(nmsTemplate);

            Assert.AreEqual(0, listener.MessageCount);
            nmsTemplate.ConvertAndSend("Hello World 1");

            int waitInMillis = 2000;

            Thread.Sleep(waitInMillis);
            Assert.AreEqual(1, listener.MessageCount);

            container.Stop();
            Console.WriteLine("container stopped.");
            nmsTemplate.ConvertAndSend("Hello World 2");
            Thread.Sleep(waitInMillis);
            Assert.AreEqual(1, listener.MessageCount);

            container.Start();
            Console.WriteLine("container started.");
            Thread.Sleep(waitInMillis);
            Assert.AreEqual(2, listener.MessageCount);

            container.Shutdown();

            Thread.Sleep(waitInMillis);
        }
Exemplo n.º 7
0
        public void AppLogs()
        {
            ConnectionFactory connectionFactory = new ConnectionFactory(URI);
            NmsTemplate       template          = new NmsTemplate(connectionFactory);

            string eventLogName = "Application";

            EventLog eventLog = new EventLog();

            eventLog.Log = eventLogName;

            foreach (EventLogEntry log in eventLog.Entries)
            {
                template.ConvertAndSend(DESTINATION, log.Message);
            }
        }