01: package org.jacorb.util;
02:
03: import org.apache.avalon.framework.configuration.Configuration;
04: import org.apache.avalon.framework.configuration.ConfigurationException;
05: import org.apache.avalon.framework.logger.ConsoleLogger;
06: import org.apache.avalon.framework.logger.Logger;
07: import org.jacorb.config.LoggerFactory;
08:
09: /**
10: * <code>ConsoleLoggerFactory</code> is a very simple example to demonstrate
11: * overriding the default logger factory.
12: *
13: * @author Nick Cross
14: * @version $Id: ConsoleLoggerFactory.java,v 1.1 2006/06/21 14:47:59 alphonse.bendt Exp $
15: */
16: public class ConsoleLoggerFactory implements LoggerFactory {
17: /**
18: * <code>target</code> is the logger for this factory.
19: */
20: private Logger target;
21:
22: /**
23: * <code>ConsoleLoggerFactory</code> creates a new Avalon console logger.
24: */
25: public ConsoleLoggerFactory() {
26: target = new ConsoleLogger();
27: }
28:
29: /**
30: * <code>getLoggingBackendName</code> returns the name of the backend.
31: *
32: * @return the name of the actual logging mechanism, e.g., "logkit"
33: */
34: public String getLoggingBackendName() {
35: return "console";
36: }
37:
38: /**
39: * <code>getNamedLogger</code> returns the logger for name. As this is
40: * an example it simply returns the console target.
41: *
42: * @param name a <code>String</code> value
43: * @return a console Logger for a given name
44: */
45: public Logger getNamedLogger(String name) {
46: return target;
47: }
48:
49: /**
50: * <code>getNamedRootLogger</code> returns the logger for name. As this is
51: * an example it simply returns the console target.
52: *
53: * @param name a <code>String</code> value
54: * @return a console Logger for a given name
55: */
56: public Logger getNamedRootLogger(String name) {
57: return target;
58: }
59:
60: /**
61: * <code>getNamedLogger</code> returns the logger for name. As this is
62: * an example it simply returns the console target.
63: *
64: * @param name a <code>String</code> value
65: * @param fileName a <code>String</code> value
66: * @param maxFileSize a <code>long</code> value
67: * @return a name Logger for a given file name and max size
68: * @exception java.io.IOException if an error occurs
69: */
70: public Logger getNamedLogger(String name, String fileName,
71: long maxFileSize) throws java.io.IOException {
72: return target;
73: }
74:
75: /**
76: * Set the file name and max file size for logging to a file
77: *
78: * @param fileName a <code>String</code> value
79: * @param maxLogSize a <code>long</code> value
80: * @exception java.io.IOException if an error occurs
81: */
82: public void setDefaultLogFile(String fileName, long maxLogSize)
83: throws java.io.IOException {
84: }
85:
86: public void configure(Configuration arg0)
87: throws ConfigurationException {
88: // nothing to configure
89: }
90: }
|