Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (c) 2007, 2008, 2009, 2010, 2011 David Berkman
   * 
   * This file is part of the SmallMind Code Project.
   * 
   * The SmallMind Code Project is free software, you can redistribute
   * it and/or modify it under the terms of GNU Affero General Public
   * License as published by the Free Software Foundation, either version 3
   * of the License, or (at your option) any later version.
  * 
  * The SmallMind Code Project is distributed in the hope that it will
  * be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * General Public License for more details.
  * 
  * You should have received a copy of the the GNU Affero General Public
  * License, along with The SmallMind Code Project. If not, see
  * <http://www.gnu.org/licenses/>.
  * 
  * Additional permission under the GNU Affero GPL version 3 section 7
  * ------------------------------------------------------------------
  * If you modify this Program, or any covered work, by linking or
  * combining it with other code, such other code is not for that reason
  * alone subject to any of the requirements of the GNU Affero GPL
  * version 3.
  */
 package org.smallmind.scribe.ink.log4j;
 
 import java.util.Map;
 
 public class Log4JRecordSubverter extends LoggingEvent implements RecordWrapper {
 
    private Log4JRecord log4jRecord;
    private ProbeReport probeReport;
    private LogicalContext logicalContext;
    private Discriminator discriminator;
    private Level level;
 
    public Log4JRecordSubverter (Logger loggerDiscriminator discriminatorLevel levelProbeReport probeReportLogicalContext logicalContextThrowable throwableString messageObject... args) {
 
       super(logger.getClass().getCanonicalName(), logger, System.currentTimeMillis(), Log4JLevelTranslator.getLog4JLevel(level), MessageTranslator.translateMessage(messageargs), throwable);
 
       this. = discriminator;
       this. = level;
       this. = probeReport;
       this. = logicalContext;
 
        = new Log4JRecord(this);
 
    }
 
    public Record getRecord () {
 
       return ;
    }
 
    public LocationInfo getLocationInformation () {
 
       if (.get() == null) {
          synchronized (this) {
             if ((.get() == null) && ( != null)) {
             }
          }
       }
 
       return .get();
    }
 
    private class Log4JRecord implements Record {
 
       private LoggingEvent loggingEvent;
       private HashMap<StringSerializableparameterMap;
       private long threadId;
       private long sequenceNumber;
 
       public Log4JRecord (LoggingEvent loggingEvent) {
 
          this. = loggingEvent;
 
           = new HashMap<StringSerializable>();
 
          = Thread.currentThread().getId();
          = SequenceGenerator.next();
      }
      public Object getNativeLogEntry () {
         return ;
      }
      public ProbeReport getProbeReport () {
         return ;
      }
      public String getLoggerName () {
         return .getLoggerName();
      }
      public Discriminator getDiscriminator () {
         return ;
      }
      public Level getLevel () {
         return ;
      }
      public Throwable getThrown () {
         return (.getThrowableInformation() != null) ? .getThrowableInformation().getThrowable() : null;
      }
      public String getMessage () {
         return .getRenderedMessage();
      }
      public void addParameter (String keySerializable value) {
         .put(keyvalue);
      }
      public Parameter[] getParameters () {
         Parameter[] parameters;
         int index = 0;
         parameters = new Parameter[.size()];
         for (Map.Entry<StringSerializableentry : .entrySet()) {
            parameters[index++] = new Parameter(entry.getKey(), entry.getValue());
         }
         return parameters;
      }
      public LogicalContext getLogicalContext () {
         return ;
      }
      public long getThreadID () {
         return ;
      }
      public String getThreadName () {
         return .getThreadName();
      }
      public long getSequenceNumber () {
         return ;
      }
      public long getMillis () {
         return .getTimeStamp();
      }
   }
New to GrepCode? Check out our FAQ X