TestMultipleLoggerFactory.java :  » Development » Monolog » org » objectweb » util » monolog » Java Open Source

Java Open Source » Development » Monolog 
Monolog » org » objectweb » util » monolog » TestMultipleLoggerFactory.java
/**
 * Copyright (C) 2002
 */

package org.objectweb.util.monolog;

import org.objectweb.util.monolog.api.LoggerFactory;
import org.objectweb.util.monolog.api.HandlerFactory;
import org.objectweb.util.monolog.api.LevelFactory;
import org.objectweb.util.monolog.api.Logger;
import org.objectweb.util.monolog.api.BasicLevel;
import org.objectweb.util.monolog.file.monolog.PropertiesConfAccess;
import org.objectweb.util.monolog.wrapper.common.Configurable;

import java.util.Properties;
import java.io.FileInputStream;

/**
 * This class checks if it possible to use two LoggerFactory instances
 * @author Sebastien Chassande-Barrioz
 */
public class TestMultipleLoggerFactory {

  public static void main(String[] args) {
    if (args.length<4) {
      System.out.println("Usage: TestMultipleLoggerFactory "
        + "<logger factory class name A> "
        + "<properties file name A> "
        + "<logger factory class name B> "
        + "<properties file name B> "
        + "<order: A | B> ");
      System.exit(1);
    }
    LoggerFactory lfa = null;
    LoggerFactory lfb = null;
    try {
      lfa = (LoggerFactory) Class.forName(args[0]).newInstance();
      lfb = (LoggerFactory) Class.forName(args[2]).newInstance();

      Properties pa = new Properties();
      pa.load( new FileInputStream(args[1]) );

      Properties pb = new Properties();
      pb.load( new FileInputStream(args[3]) );

      if (args.length == 5 && args[4].equalsIgnoreCase("b") ) {
        PropertiesConfAccess.load(pa,
          lfa, (HandlerFactory) lfa, (LevelFactory) lfa);

        ((Configurable) lfb).configure(pb);
      }
      else {
        PropertiesConfAccess.load(pa,
        lfa, (HandlerFactory) lfa, (LevelFactory) lfa);

        ((Configurable) lfb).configure(pb);
      }

    }
    catch (Exception e) {
      e.printStackTrace();
      System.exit(1);
    }

    Logger la = lfa.getLogger("a");
    Logger lb = lfa.getLogger("b");
    la.log(BasicLevel.WARN, "Message 1 send by the logger A");
    la.log(BasicLevel.WARN, "Message 2 send by the logger A");
    la.log(BasicLevel.WARN, "Message 3 send by the logger A");
    lb.log(BasicLevel.WARN, "Message 1 send by the logger B");
    lb.log(BasicLevel.WARN, "Message 2 send by the logger B");
    lb.log(BasicLevel.WARN, "Message 3 send by the logger B");
    la = lfa.getLogger("a.c");
    la.log(BasicLevel.WARN, "Message 1 send by the logger A.C");
    la.log(BasicLevel.WARN, "Message 2 send by the logger A.C");
    la.log(BasicLevel.WARN, "Message 3 send by the logger A.C");
    lb = lfa.getLogger("b.d");
    lb.log(BasicLevel.WARN, "Message 1 send by the logger B.D");
    lb.log(BasicLevel.WARN, "Message 2 send by the logger B.D");
    lb.log(BasicLevel.WARN, "Message 3 send by the logger B.D");
  }


}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.