Пример #1
0
 /**
    * Wird benutzt um den Ausgaberecord zu formatieren.
    */
 protected virtual string InternalFormat(LogRecord record)
 {
     return String.Format("{0:G},{4} [{1}] {2}: {3}",
          record.LogTime, record.Source,
          record.Level,   record.Message, record.LogTime.Millisecond);
 }
Пример #2
0
 /**
    * Record publizieren.
    */
 protected override void InternalPublish(LogRecord record)
 {
     if (sink_ != null)
       {
       sink_.WriteLine(InternalFormat(record));
       sink_.Flush();
       }
 }
Пример #3
0
 /**
  * Wird aufgerufen um einen LogRecord zu publizieren.
  *
  * Die InternalPublish Methode wird mit aktivem sync_lock_
  * Monitor aufgerufen. (D.h. sofern die Implementation nur
  * mit Unterobjekten dieses Loggers arbeitet braucht keine
  * besondere Rücksicht auf die Thread-Sicherheit genommen
  * werden.)
  */
 protected abstract void InternalPublish(LogRecord record);
Пример #4
0
 /* Dummy-Implementation für InternalPublish */
 protected override void InternalPublish(LogRecord record)
 {
 }
Пример #5
0
        /**
         * Publish-Operation
         */
        protected override void InternalPublish(LogRecord log_record)
        {
            int end_pointer = _recordListPointer;
            _recordListPointer = (_recordListPointer + 1) % _recordList.Length;
            _recordList[end_pointer] = log_record;

            try
            {
                if (_onLog != null)
                    _onLog(_recordList, end_pointer);
            }
            catch (Exception e_bad)
            {
            #if DEBUG
                SysDebug.WriteLine("CircularListLogger: InternalPublish: Exception: " // TRANSLATEME
                    + LogUtils.FormatException(e_bad));
            #endif
            }
        }
Пример #6
0
 /**
  * Wird benutzt um den Ausgaberecord zu formatieren.
  */
 protected virtual string InternalFormat(LogRecord record)
 {
     return(String.Format("{0:G},{4} [{1}] {2}: {3}",
                          record.LogTime, record.Source,
                          record.Level, record.Message, record.LogTime.Millisecond));
 }
Пример #7
0
 /* Dummy-Implementation für InternalPublish */
 protected override void InternalPublish(LogRecord record)
 {
 }
Пример #8
0
 /**
  * Wird aufgerufen um einen LogRecord zu publizieren.
  *
  * Die InternalPublish Methode wird mit aktivem sync_lock_
  * Monitor aufgerufen. (D.h. sofern die Implementation nur
  * mit Unterobjekten dieses Loggers arbeitet braucht keine
  * besondere Rücksicht auf die Thread-Sicherheit genommen
  * werden.)
  */
 protected abstract void InternalPublish(LogRecord record);
Пример #9
0
        /**
         * Protokolliert den angegebenen Log-Record. (Diese Methode
         * wird u.a. benutzt um die Weiterleitung von Log-Meldungen
         * an übergeordnete Logger zu implementieren.)
         */
        public void Log(LogRecord record)
        {
            lock(sync_lock_)
            {
                if (record.Level > loglevel_)
                    return;

                InternalPublish(record);
                if (notify_parent_ && parent_ != null)
                    parent_.Log(record);
            }
        }