コード例 #1
0
        public void _Debug(string message)
        {
            if (EnableDebug)
            {
                messageMutex.WaitOne();
                ConsoleMessage cm = new ConsoleMessage(ConsoleMessagePriority.DEBUG, message);
                if (LogConsole)
                {
                    ConsoleColor oldColor = Console.ForegroundColor;
                    Console.ForegroundColor = ConsoleColor.DarkGray;
                    Console.WriteLine(cm);
                    Console.ForegroundColor = oldColor;
                }

                if (syslog != null)
                {
                    try {
                        SyslogClient.Send(new Message(Configuration.SyslogFacility, Level.Debug, cm.Message));
                    } catch (SocketException) {
                        // Syslog not configured, ignore.
                    }
                }
                messageMutex.ReleaseMutex();
                MessageAvailable?.Invoke(cm);
            }
        }
コード例 #2
0
 private void NotifyMessages(IEnumerable <Message> messages)
 {
     foreach (var message in messages)
     {
         MessageAvailable?.Invoke(this, e: message);
     }
 }
コード例 #3
0
        public void _Error(string message)
        {
            if (EnableError)
            {
                messageMutex.WaitOne();
                ConsoleMessage cm = new ConsoleMessage(ConsoleMessagePriority.ERROR, message);
                if (LogConsole)
                {
                    ConsoleColor oldColor = Console.ForegroundColor;
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine(cm);
                    Console.ForegroundColor = oldColor;
                }

                if (syslog != null)
                {
                    try {
                        SyslogClient.Send(new Message(ConfigurationManager.Get(SYSLOGFACILITYDBKEY, "LOG_USER"), Level.Error, cm.Message));
                    } catch (SocketException) {
                        // Syslog not configured, ignore.
                    }
                }
                messageMutex.ReleaseMutex();
                MessageAvailable?.Invoke(cm);
            }
        }
コード例 #4
0
ファイル: XMPP.cs プロジェクト: ItayTur/Social-Network
        private void OnXElementStreamChanged(XmppXElement element)
        {
            if (element is Message m)
            {
                MessageAvailable?.Invoke(this, new EventArgs <Message>(m));
            }

            Trace.WriteLine(element);
        }
コード例 #5
0
 protected virtual void OnMessageAvailable(Message m)
 {
     MessageAvailable?.Invoke(m);
 }
コード例 #6
0
 protected void OnMessageAvailable(string message)
 {
     MessageAvailable?.Invoke(this, new MessageAvailableEventArgs(message));
 }
コード例 #7
0
 private void OnMessageAvailable(IncomingTransportMessage transportMessage)
 {
     MessageAvailable?.Invoke(this, new MessageAvailableEventArgs(transportMessage));
 }
コード例 #8
0
 /// <summary>
 /// Used as a way to bubble messages up the stack.
 /// </summary>
 /// <param name="e"></param>
 protected virtual void OnMessageAvailable(MessageAvailableEventArgs e)
 {
     MessageAvailable?.Invoke(this, e);
 }
コード例 #9
0
 /// <summary>
 /// Let the subscribers know that there is a new message only.  Check the queue to get the next message
 /// </summary>
 /// <param name="e"></param>
 protected virtual void PublishMessageAvailable(EventArgs e)
 {
     MessageAvailable?.Invoke(this, e);
 }