Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="queueItem"></param>
        /// <param name="receiverConsoleId">null or empty string is a broardcast</param>
        public void Enqueue(IConsoleMessageQueueItem queueItem, string receiverConsoleId)
        {
            if (queueItem == null)
            {
                throw new ArgumentNullException("queueItem");
            }
            if (receiverConsoleId == "")
            {
                receiverConsoleId = null;
            }


            lock (_lock)
            {
                var queueElement = new ConsoleMessageQueueElement
                {
                    ReceiverConsoleId = receiverConsoleId,
                    QueueItemNumber   = ++_queueItemCounter,
                    EnqueueTime       = DateTime.Now,
                    QueueItem         = queueItem
                };


                _elements.Add(queueElement);

                SerializeMessagesToFileSystem();
            }
        }
Пример #2
0
        // Dont add flush / initialize to this class. We do not want console messages to get lost.

        /// <summary>
        ///
        /// </summary>
        /// <param name="consoleMessageQueueItem"></param>
        /// <param name="receiverConsoleId">null or empty string is a broardcast</param>
        public static void Enqueue(IConsoleMessageQueueItem consoleMessageQueueItem, string receiverConsoleId)
        {
            if (consoleMessageQueueItem == null)
            {
                throw new ArgumentNullException("consoleMessageQueueItem");
            }

            _messageQeueue.Enqueue(consoleMessageQueueItem, receiverConsoleId);
        }
Пример #3
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="queueItem"></param>
        /// <param name="receiverConsoleId">null or empty string is a broardcast</param>        
        public void Enqueue(IConsoleMessageQueueItem queueItem, string receiverConsoleId)
        {
            if (queueItem == null) throw new ArgumentNullException("queueItem");
            if (receiverConsoleId == "") receiverConsoleId = null;


            lock (_lock)
            {
                var queueElement = new ConsoleMessageQueueElement
                   {
                       ReceiverConsoleId = receiverConsoleId,
                       QueueItemNumber = ++_queueItemCounter,
                       EnqueueTime = DateTime.Now,
                       QueueItem = queueItem
                   };


                _elements.Add(queueElement);

                SerializeMessagesToFileSystem();
            }
        }
        // Dont add flush / initialize to this class. We do not want console messages to get lost.

        /// <summary>
        /// 
        /// </summary>
        /// <param name="consoleMessageQueueItem"></param>
        /// <param name="receiverConsoleId">null or empty string is a broardcast</param>
        public static void Enqueue(IConsoleMessageQueueItem consoleMessageQueueItem, string receiverConsoleId)
        {
            if (consoleMessageQueueItem == null) throw new ArgumentNullException("consoleMessageQueueItem");

            _messageQeueue.Enqueue(consoleMessageQueueItem, receiverConsoleId);
        }