You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-cvs@jakarta.apache.org by ce...@apache.org on 2001/08/08 00:23:59 UTC
cvs commit: jakarta-log4j/src/java/org/apache/log4j/spi LoggingEvent.java
ceki 01/08/07 15:23:59
Modified: src/java/org/apache/log4j MDC.java
src/java/org/apache/log4j/helpers Makefile
ThreadLocalMap.java
src/java/org/apache/log4j/net SocketNode.java
src/java/org/apache/log4j/spi LoggingEvent.java
Added: src/java/org/apache/log4j/helpers ITLContext.java
Log:
Changed the MDC class so that it will "work" under JDK 1.1.
The behaviour will be equivalent to NOP.
Revision Changes Path
1.7 +7 -17 jakarta-log4j/src/java/org/apache/log4j/MDC.java
Index: MDC.java
===================================================================
RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/MDC.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- MDC.java 2001/08/07 22:17:27 1.6
+++ MDC.java 2001/08/07 22:23:58 1.7
@@ -9,7 +9,8 @@
package org.apache.log4j;
import java.util.Hashtable;
-import org.apache.log4j.helpers.ThreadLocalMap;
+//import org.apache.log4j.helpers.ThreadLocalMap;
+import org.apache.log4j.helpers.ITLContext;
/**
The MDC class supercedes the {@link NDC} class. It provides
@@ -34,10 +35,8 @@
@author Ceki Gülcü */
public class MDC {
- final static ThreadLocalMap context = new ThreadLocalMap();
+ final static ITLContext context = new ITLContext();
- static final int HT_SIZE = 7;
-
/**
Put a context value (the <code>o</code> parameter) as identified
with the <code>key</code> parameter into the current thread's
@@ -50,12 +49,7 @@
static
public
void put(String key, Object o) {
- Hashtable ht = (Hashtable) context.get();
- if(ht == null) {
- ht = new Hashtable(HT_SIZE);
- context.set(ht);
- }
- ht.put(key, o);
+ context.put(key, o);
}
/**
@@ -66,18 +60,14 @@
static
public
Object get(String key) {
- Hashtable ht = (Hashtable) context.get();
- if(ht != null) {
- return ht.get(key);
- } else {
- return null;
- }
+ return context.get(key);
}
public
static
Hashtable getContext() {
- return (Hashtable) context.get();
+ //return (Hashtable) context.get();
+ return null;
}
}
1.11 +1 -0 jakarta-log4j/src/java/org/apache/log4j/helpers/Makefile
Index: Makefile
===================================================================
RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/helpers/Makefile,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- Makefile 2001/08/06 20:21:01 1.10
+++ Makefile 2001/08/07 22:23:58 1.11
@@ -21,6 +21,7 @@
FileWatchdog.java\
Loader.java\
ThreadLocalMap.java\
+ ITLContext.java\
SUBDIRS :=
1.2 +0 -7 jakarta-log4j/src/java/org/apache/log4j/helpers/ThreadLocalMap.java
Index: ThreadLocalMap.java
===================================================================
RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/helpers/ThreadLocalMap.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ThreadLocalMap.java 2001/08/06 19:40:29 1.1
+++ ThreadLocalMap.java 2001/08/07 22:23:58 1.2
@@ -16,11 +16,4 @@
return null;
}
}
-
- public
- final
- void finalize() throws Throwable {
- System.out.println("finalize called. ["+Thread.currentThread().getName()+"]");
- super.finalize();
- }
}
1.1 jakarta-log4j/src/java/org/apache/log4j/helpers/ITLContext.java
Index: ITLContext.java
===================================================================
package org.apache.log4j.helpers;
import java.util.Hashtable;
public class ITLContext {
static final int HT_SIZE = 7;
boolean java1;
Object tlm;
public
ITLContext() {
java1 = Loader.isJava1();
if(!java1) {
tlm = new ThreadLocalMap();
}
}
public
void put(String key, Object o) {
if(java1) {
return;
} else {
Hashtable ht = (Hashtable) ((ThreadLocalMap)tlm).get();
if(ht == null) {
ht = new Hashtable(HT_SIZE);
((ThreadLocalMap)tlm).set(ht);
}
ht.put(key, o);
}
}
public
Object get(String key) {
if(java1) {
return null;
} else {
Hashtable ht = (Hashtable) ((ThreadLocalMap)tlm).get();
if(ht != null) {
return ht.get(key);
} else {
return null;
}
}
}
}
1.9 +1 -2 jakarta-log4j/src/java/org/apache/log4j/net/SocketNode.java
Index: SocketNode.java
===================================================================
RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/net/SocketNode.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- SocketNode.java 2001/06/26 10:52:30 1.8
+++ SocketNode.java 2001/08/07 22:23:58 1.9
@@ -89,8 +89,7 @@
try {
ois.close();
- }
- catch(Exception e) {
+ } catch(Exception e) {
cat.info("Could not close connection.", e);
}
}
1.16 +30 -0 jakarta-log4j/src/java/org/apache/log4j/spi/LoggingEvent.java
Index: LoggingEvent.java
===================================================================
RCS file: /home/cvs/jakarta-log4j/src/java/org/apache/log4j/spi/LoggingEvent.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- LoggingEvent.java 2001/08/06 20:21:01 1.15
+++ LoggingEvent.java 2001/08/07 22:23:59 1.16
@@ -62,6 +62,10 @@
/** The nested diagnostic context (NDC) of logging event. */
private String ndc;
+ /** The mapped diagnostic context (MDC) of logging event. */
+ private Hashtable mdc;
+
+
/** Have we tried to do an NDC lookup? If we did, there is no need
to do it again. Note that its value is always false when
serialized. Thus, a receiving SocketNode will never use it's own
@@ -69,6 +73,13 @@
private boolean ndcLookupRequired = true;
+ /** Have we tried to do an MDC lookup? If we did, there is no need to
+ do it again. Note that its value is always false when
+ serialized. Thus, a receiving SocketNode will never use it's own
+ (incorrect) MDC. See also writeObject method. */
+ private boolean mdcLookupRequired = true;
+
+
/** The application supplied message of logging event. */
transient private Object message;
@@ -163,6 +174,25 @@
}
return ndc;
}
+
+ //public
+ //Hashtable getMDC(String key) {
+ // if(mdcLookupRequired) {
+ // mdcLookupRequired = false;
+ // mdc = MDC.getContext();
+ // if(mdc != null)
+ // return mdc.get(key);
+ // }
+ //
+ //
+ // Object r = mdc.get(key);
+ // if(r == null) {
+ // return MDC.get(key);
+ // } else {
+ // return r;
+ // }
+ //}
+
public
String getRenderedMessage() {
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-cvs-unsubscribe@jakarta.apache.org
For additional commands, e-mail: log4j-cvs-help@jakarta.apache.org