下面列出了怎么用org.apache.log4j.helpers.AppenderAttachableImpl的API类实例代码及写法,或者点击链接到github查看源代码。
/**
* 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();
}
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;
}
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();
}
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();
}
}
}
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;
}
}
}
/**
* 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;
}
public AsyncCoalescingStatisticsAppender() {
this.downstreamLogLevel = Level.INFO;
this.baseImplementation = this.newGenericAsyncCoalescingStatisticsAppender();
this.downstreamAppenders = new AppenderAttachableImpl();
this.shutdownHook = null;
}
public void addAppender(Appender appender) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.addAppender(appender);
}
}
public Enumeration getAllAppenders() {
AppenderAttachableImpl var1 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
return this.downstreamAppenders.getAllAppenders();
}
}
public Appender getAppender(String name) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
return this.downstreamAppenders.getAppender(name);
}
}
public boolean isAttached(Appender appender) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
return this.downstreamAppenders.isAttached(appender);
}
}
public void removeAllAppenders() {
AppenderAttachableImpl var1 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.removeAllAppenders();
}
}
public void removeAppender(Appender appender) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.removeAppender(appender);
}
}
public void removeAppender(String name) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.removeAppender(name);
}
}
public void addAppender(Appender appender) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.addAppender(appender);
}
}
public Enumeration getAllAppenders() {
AppenderAttachableImpl var1 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
return this.downstreamAppenders.getAllAppenders();
}
}
public Appender getAppender(String name) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
return this.downstreamAppenders.getAppender(name);
}
}
public boolean isAttached(Appender appender) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
return this.downstreamAppenders.isAttached(appender);
}
}
public void removeAllAppenders() {
AppenderAttachableImpl var1 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.removeAllAppenders();
}
}
public void removeAppender(Appender appender) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.removeAppender(appender);
}
}
public void removeAppender(String name) {
AppenderAttachableImpl var2 = this.downstreamAppenders;
synchronized(this.downstreamAppenders) {
this.downstreamAppenders.removeAppender(name);
}
}