ceki 2004/11/30 10:52:17
Modified: src/java/org/apache/log4j/spi DefaultRepositorySelector.java
RepositorySelector.java
src/java/org/apache/log4j LogManager.java
src/java/org/apache/log4j/selector ContextJNDISelector.java
Log:
- Tweaking the repository selector initialization code as discussed on [EMAIL
PROTECTED]
- Added getDefaultRepository method to the RepositorySelector interface.
Revision Changes Path
1.8 +4 -0
logging-log4j/src/java/org/apache/log4j/spi/DefaultRepositorySelector.java
Index: DefaultRepositorySelector.java
===================================================================
RCS file:
/home/cvs/logging-log4j/src/java/org/apache/log4j/spi/DefaultRepositorySelector.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- DefaultRepositorySelector.java 30 Mar 2004 10:45:21 -0000 1.7
+++ DefaultRepositorySelector.java 30 Nov 2004 18:52:17 -0000 1.8
@@ -26,6 +26,10 @@
return repository;
}
+ public LoggerRepository getDefaultRepository() {
+ return repository ;
+ }
+
public void setDefaultRepository(LoggerRepository dr) {
if(repository == null) {
repository = dr;
1.10 +10 -0
logging-log4j/src/java/org/apache/log4j/spi/RepositorySelector.java
Index: RepositorySelector.java
===================================================================
RCS file:
/home/cvs/logging-log4j/src/java/org/apache/log4j/spi/RepositorySelector.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- RepositorySelector.java 30 Mar 2004 10:45:21 -0000 1.9
+++ RepositorySelector.java 30 Nov 2004 18:52:17 -0000 1.10
@@ -48,6 +48,16 @@
public void setDefaultRepository(LoggerRepository def);
/**
+ * Gets the default repository. In the initial phases of configration, the
+ * returned value may be null. However, after the RepositorySelector is
+ * properly registered with LogManager, the returned value should never
+ * be null.
+ *
+ * @since 1.3
+ */
+ public LoggerRepository getDefaultRepository();
+
+ /**
* Remove the repository with the given context name from the list
maintained
* by the respository selector.
*
1.25 +7 -3 logging-log4j/src/java/org/apache/log4j/LogManager.java
Index: LogManager.java
===================================================================
RCS file: /home/cvs/logging-log4j/src/java/org/apache/log4j/LogManager.java,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- LogManager.java 29 Nov 2004 01:57:14 -0000 1.24
+++ LogManager.java 30 Nov 2004 18:52:17 -0000 1.25
@@ -81,9 +81,13 @@
}
}
- // at this stage 'repositorySelector' should point to a valid selector
- repositorySelector.setDefaultRepository(defaultHierarchy);
-
+ // at this stage 'repositorySelector' should point to a valid selector.
+ // Set the default repository for the selector, but only if it has not
+ // have one already.
+ if(repositorySelector.getDefaultRepository() == null) {
+ repositorySelector.setDefaultRepository(defaultHierarchy);
+ }
+
// configure log4j internal logging for the default hierarchy
IntializationUtil.log4jInternalConfiguration(defaultHierarchy);
1.14 +4 -0
logging-log4j/src/java/org/apache/log4j/selector/ContextJNDISelector.java
Index: ContextJNDISelector.java
===================================================================
RCS file:
/home/cvs/logging-log4j/src/java/org/apache/log4j/selector/ContextJNDISelector.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- ContextJNDISelector.java 30 Nov 2004 00:03:03 -0000 1.13
+++ ContextJNDISelector.java 30 Nov 2004 18:52:17 -0000 1.14
@@ -147,6 +147,10 @@
"default hierarchy has been already set.");
}
}
+
+ public LoggerRepository getDefaultRepository() {
+ return defaultRepository ;
+ }
/**
* Return the repoistory selector based on the current JNDI environment.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]