]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.cms/src/org/argeo/cms/internal/kernel/NodeLogger.java
Fix first init
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / internal / kernel / NodeLogger.java
index 3de2c7934ac43f221aca27d1cdc5ed8ddf44f281..14d88144d1053df6b360dfa4d791f95cd7575998 100644 (file)
@@ -37,11 +37,12 @@ import org.apache.log4j.LogManager;
 import org.apache.log4j.Logger;
 import org.apache.log4j.PropertyConfigurator;
 import org.apache.log4j.spi.LoggingEvent;
-import org.argeo.ArgeoException;
+import org.argeo.cms.CmsException;
 import org.argeo.cms.auth.CurrentUser;
 import org.argeo.node.ArgeoLogListener;
 import org.argeo.node.ArgeoLogger;
 import org.argeo.node.NodeConstants;
+import org.argeo.osgi.useradmin.UserAdminConf;
 import org.osgi.framework.Constants;
 import org.osgi.framework.ServiceReference;
 import org.osgi.service.cm.ConfigurationAdmin;
@@ -108,7 +109,7 @@ class NodeLogger implements ArgeoLogger, LogListener {
                        logDispatcherThread = new LogDispatcherThread();
                        logDispatcherThread.start();
                } catch (Exception e) {
-                       throw new ArgeoException("Cannot initialize log4j");
+                       throw new CmsException("Cannot initialize log4j");
                }
        }
 
@@ -149,7 +150,8 @@ class NodeLogger implements ArgeoLogger, LogListener {
        }
 
        private String msg(LogEntry status) {
-               StringBuilder sb = new StringBuilder(status.getMessage());
+               StringBuilder sb = new StringBuilder();
+               sb.append(status.getMessage());
                ServiceReference<?> sr = status.getServiceReference();
                if (sr != null) {
                        sb.append(' ');
@@ -161,11 +163,11 @@ class NodeLogger implements ArgeoLogger, LogListener {
                        Object factoryPid = sr.getProperty(ConfigurationAdmin.SERVICE_FACTORYPID);
                        if (factoryPid != null)
                                sb.append(" " + ConfigurationAdmin.SERVICE_FACTORYPID + ": " + factoryPid);
-                       else {
-                               Object servicePid = sr.getProperty(Constants.SERVICE_PID);
-                               if (servicePid != null)
-                                       sb.append(" " + Constants.SERVICE_PID + ": " + servicePid);
-                       }
+//                     else {
+//                             Object servicePid = sr.getProperty(Constants.SERVICE_PID);
+//                             if (servicePid != null)
+//                                     sb.append(" " + Constants.SERVICE_PID + ": " + servicePid);
+//                     }
                        // servlets
                        Object whiteBoardPattern = sr.getProperty(KernelConstants.WHITEBOARD_PATTERN_PROP);
                        if (whiteBoardPattern != null)
@@ -175,6 +177,11 @@ class NodeLogger implements ArgeoLogger, LogListener {
                        Object contextName = sr.getProperty(KernelConstants.CONTEXT_NAME_PROP);
                        if (contextName != null)
                                sb.append(" " + KernelConstants.CONTEXT_NAME_PROP + ": " + contextName);
+                       
+                       // user directories
+                       Object baseDn = sr.getProperty(UserAdminConf.baseDn.name());
+                       if (baseDn != null)
+                               sb.append(" " + UserAdminConf.baseDn.name() + ": " + baseDn);
                }
                return sb.toString();
        }
@@ -198,7 +205,7 @@ class NodeLogger implements ArgeoLogger, LogListener {
        public synchronized void register(ArgeoLogListener listener, Integer numberOfPreviousEvents) {
                String username = CurrentUser.getUsername();
                if (username == null)
-                       throw new ArgeoException("Only authenticated users can register a log listener");
+                       throw new CmsException("Only authenticated users can register a log listener");
 
                if (!userListeners.containsKey(username)) {
                        List<ArgeoLogListener> lst = Collections.synchronizedList(new ArrayList<ArgeoLogListener>());
@@ -227,9 +234,9 @@ class NodeLogger implements ArgeoLogger, LogListener {
                if (username == null)// FIXME
                        return;
                if (!userListeners.containsKey(username))
-                       throw new ArgeoException("No user listeners " + listener + " registered for user " + username);
+                       throw new CmsException("No user listeners " + listener + " registered for user " + username);
                if (!userListeners.get(username).contains(listener))
-                       throw new ArgeoException("No user listeners " + listener + " registered for user " + username);
+                       throw new CmsException("No user listeners " + listener + " registered for user " + username);
                userListeners.get(username).remove(listener);
                if (userListeners.get(username).isEmpty())
                        userListeners.remove(username);