01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */package org.apache.openejb.util;
17:
18: /**
19: * Contains Logger categories used in OpenEJB. Be careful when adding new Categories. For example, if a new Category
20: * named OpenEJB.shutdown needs to be added, then the following is not a recommended way
21: * public static final LogCategory OPENEJB_SHUTDOWN = new LogCategory("OpenEJB.shutdown");
22: * The above is not recommended because the above logger has a parent logger in OpenEJB. If we change the Parent logger
23: * category i.e. lets say to OPENEJB (all uppercase), then to maintain the parent-child relationship, we will need
24: * to change other loggers too. For example, we will not need to change OPENEJB_STARTUP and OPENEJB_SERVER because
25: * of the way they are defined (using OPENEJB.name as a prefix).
26: * A better way of adding the Category would be
27: * public static final LogCategory OPENEJB_SHUTDOWN = new LogCategory( OPENEJB.name + ".shutdown");
28: *
29: *
30: */
31: public final class LogCategory {
32: private final String name;
33: public static final LogCategory OPENEJB = new LogCategory("OpenEJB");
34: public static final LogCategory OPENEJB_ADMIN = OPENEJB
35: .createChild("admin");
36: public static final LogCategory OPENEJB_STARTUP = OPENEJB
37: .createChild("startup");
38: public static final LogCategory OPENEJB_STARTUP_CONFIG = OPENEJB_STARTUP
39: .createChild("config");
40: public static final LogCategory OPENEJB_STARTUP_VALIDATION = OPENEJB_STARTUP
41: .createChild("validation");
42: public static final LogCategory OPENEJB_SERVER = OPENEJB
43: .createChild("server");
44: public static final LogCategory OPENEJB_SERVER_REMOTE = OPENEJB_SERVER
45: .createChild("remote");
46: public static final LogCategory OPENEJB_SECURITY = OPENEJB
47: .createChild("security");
48: public static final LogCategory OPENEJB_RESOURCE_JDBC = OPENEJB
49: .createChild("resource.jdbc");
50: public static final LogCategory OPENEJB_CONNECTOR = OPENEJB
51: .createChild("connector");
52: public static final LogCategory OPENEJB_DEPLOY = OPENEJB
53: .createChild("deploy");
54: public static final LogCategory OPENEJB_HSQL = OPENEJB
55: .createChild("hsql");
56: public static final LogCategory OPENEJB_WS = OPENEJB
57: .createChild("ws");
58: public static final LogCategory TRANSACTION = new LogCategory(
59: "Transaction");
60: public static final LogCategory ACTIVEMQ = new LogCategory(
61: "org.apache.activemq");
62: public static final LogCategory GERONIMO = new LogCategory(
63: "org.apache.geronimo");
64: public static final LogCategory OPENJPA = new LogCategory("openjpa");
65: public static final LogCategory CORBA_ADAPTER = new LogCategory(
66: "CORBA-Adapter");
67: public static final LogCategory AXIS = new LogCategory("axis");
68: public static final LogCategory AXIS2 = new LogCategory("axis");
69: public static final LogCategory CXF = new LogCategory("cxf");
70: public static final LogCategory TIMER = new LogCategory("Timer");
71: public static final LogCategory HTTPSERVER = new LogCategory(
72: "HttpServer");
73: public static final LogCategory SERVICEPOOL = new LogCategory(
74: "ServicePool");
75:
76: private LogCategory(String name) {
77: this .name = name;
78: }
79:
80: public String getName() {
81: return name;
82: }
83:
84: /**
85: * Creates a child category of this category. <B>Use this method sparingly</B>. This method is to be used in only those circumstances where the name of the
86: * category is not known upfront and is a derived name. If you know the name of the category, it is highly recommended to add a static final field
87: * of type LogCategory in this class
88: * @param child
89: * @return - LogCategory
90: */
91: public LogCategory createChild(String child) {
92: return new LogCategory(this .name + "." + child);
93: }
94:
95: }
|