private static void init(){
  if (DEFAULT_REPORTER == null) {
synchronized (XTrace.class) {
      if (DEFAULT_REPORTER == null) {
        XTRACE_ENABLED=XTraceSettings.On();
        if (XTRACE_ENABLED) {
          PubSubReporter pubsub=new PubSubReporter();
          pubsub.start();
          DEFAULT_REPORTER=pubsub;
          DEFAULT_LOGGER=new XTraceLoggerImpl("",DEFAULT_REPORTER);
          RECYCLE_LOGGER=new XTraceLoggerImpl("Recycle",DEFAULT_REPORTER);
        }
 else {
          DEFAULT_REPORTER=new NullReporter();
          DEFAULT_LOGGER=NULL_LOGGER;
          RECYCLE_LOGGER=NULL_LOGGER;
        }
      }
    }
  }
}

private static void init ( ) { if ( DEFAULT_REPORTER == null ) { synchronized ( XTrace . class ) { if ( DEFAULT_REPORTER == null ) { XTRACE_ENABLED = XTraceSettings . On ( ) ; if ( XTRACE_ENABLED ) { PubSubReporter pubsub = new PubSubReporter ( ) ; pubsub . start ( ) ; DEFAULT_REPORTER = pubsub ; DEFAULT_LOGGER = new XTraceLoggerImpl ( "" , DEFAULT_REPORTER ) ; RECYCLE_LOGGER = new XTraceLoggerImpl ( "Recycle" , DEFAULT_REPORTER ) ; } else { DEFAULT_REPORTER = new NullReporter ( ) ; DEFAULT_LOGGER = NULL_LOGGER ; RECYCLE_LOGGER = NULL_LOGGER ; } } } } }
lazy initialization of reporter and loggers
