Java源码示例:org.apache.log4j.helpers.AppenderAttachableImpl

示例1
/**
 * Create new instance.
 */
public AsyncAppender() {
  appenders = new AppenderAttachableImpl();

  //
  //   only set for compatibility
  aai = appenders;

  dispatcher =
    new Thread(new Dispatcher(this, buffer, discardMap, appenders));

  // It is the user's responsibility to close appenders before
  // exiting.
  dispatcher.setDaemon(true);

  // set the dispatcher priority to lowest possible value
  //        dispatcher.setPriority(Thread.MIN_PRIORITY);
  dispatcher.setName("Dispatcher-" + dispatcher.getName());
  dispatcher.start();
}
 
示例2
public void close() {
   this.baseImplementation.stop();
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      Enumeration enumer = this.downstreamAppenders.getAllAppenders();

      while(enumer != null && enumer.hasMoreElements()) {
         Appender appender = (Appender)enumer.nextElement();
         if (appender instanceof Flushable) {
            try {
               ((Flushable)appender).flush();
            } catch (Exception var6) {
               ;
            }
         }
      }

      enumer = this.downstreamAppenders.getAllAppenders();

      while(true) {
         if (enumer == null || !enumer.hasMoreElements()) {
            break;
         }

         ((Appender)enumer.nextElement()).close();
      }
   }

   this.closed = true;
}
 
示例3
public GraphingStatisticsAppender() {
   this.graphType = StatsValueRetriever.MEAN_VALUE_RETRIEVER.getValueName();
   this.tagNamesToGraph = null;
   this.dataPointsPerGraph = 20;
   this.numLoggedStatistics = new AtomicLong();
   this.hasUnflushedData = false;
   this.lastAppendedEventLevel = Level.INFO;
   this.downstreamAppenders = new AppenderAttachableImpl();
}
 
示例4
public void close() {
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.flush();
      Enumeration enumer = this.downstreamAppenders.getAllAppenders();

      while(enumer != null && enumer.hasMoreElements()) {
         Appender appender = (Appender)enumer.nextElement();
         appender.close();
      }

   }
}
 
示例5
public void flush() {
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      if (this.hasUnflushedData && this.downstreamAppenders.getAllAppenders() != null) {
         this.downstreamAppenders.appendLoopOnAppenders(new LoggingEvent(Logger.class.getName(), Logger.getLogger("org.perf4j.TimingLogger"), System.currentTimeMillis(), this.lastAppendedEventLevel, this.chartGenerator.getChartUrl(), (Throwable)null));
         this.hasUnflushedData = false;
      }

   }
}
 
示例6
/**
 * Create new instance of dispatcher.
 *
 * @param parent     parent AsyncAppender, may not be null.
 * @param buffer     event buffer, may not be null.
 * @param discardMap discard map, may not be null.
 * @param appenders  appenders, may not be null.
 */
public Dispatcher(
  final AsyncAppender parent, final List buffer, final Map discardMap,
  final AppenderAttachableImpl appenders) {

  this.parent = parent;
  this.buffer = buffer;
  this.appenders = appenders;
  this.discardMap = discardMap;
}
 
示例7
public AsyncCoalescingStatisticsAppender() {
   this.downstreamLogLevel = Level.INFO;
   this.baseImplementation = this.newGenericAsyncCoalescingStatisticsAppender();
   this.downstreamAppenders = new AppenderAttachableImpl();
   this.shutdownHook = null;
}
 
示例8
public void addAppender(Appender appender) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.addAppender(appender);
   }
}
 
示例9
public Enumeration getAllAppenders() {
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      return this.downstreamAppenders.getAllAppenders();
   }
}
 
示例10
public Appender getAppender(String name) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      return this.downstreamAppenders.getAppender(name);
   }
}
 
示例11
public boolean isAttached(Appender appender) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      return this.downstreamAppenders.isAttached(appender);
   }
}
 
示例12
public void removeAllAppenders() {
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.removeAllAppenders();
   }
}
 
示例13
public void removeAppender(Appender appender) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.removeAppender(appender);
   }
}
 
示例14
public void removeAppender(String name) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.removeAppender(name);
   }
}
 
示例15
public void addAppender(Appender appender) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.addAppender(appender);
   }
}
 
示例16
public Enumeration getAllAppenders() {
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      return this.downstreamAppenders.getAllAppenders();
   }
}
 
示例17
public Appender getAppender(String name) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      return this.downstreamAppenders.getAppender(name);
   }
}
 
示例18
public boolean isAttached(Appender appender) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      return this.downstreamAppenders.isAttached(appender);
   }
}
 
示例19
public void removeAllAppenders() {
   AppenderAttachableImpl var1 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.removeAllAppenders();
   }
}
 
示例20
public void removeAppender(Appender appender) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.removeAppender(appender);
   }
}
 
示例21
public void removeAppender(String name) {
   AppenderAttachableImpl var2 = this.downstreamAppenders;
   synchronized(this.downstreamAppenders) {
      this.downstreamAppenders.removeAppender(name);
   }
}