[jboss-cvs] JBossAS SVN: r92969 - projects/jboss-osgi/projects/bundles/apache-xerces/trunk/src/main/java/org/jboss/osgi/xml.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Aug 28 11:55:41 EDT 2009


Author: thomas.diesler at jboss.com
Date: 2009-08-28 11:55:41 -0400 (Fri, 28 Aug 2009)
New Revision: 92969

Modified:
   projects/jboss-osgi/projects/bundles/apache-xerces/trunk/src/main/java/org/jboss/osgi/xml/XMLParserActivatorExt.java
Log:
Improve service logging

Modified: projects/jboss-osgi/projects/bundles/apache-xerces/trunk/src/main/java/org/jboss/osgi/xml/XMLParserActivatorExt.java
===================================================================
--- projects/jboss-osgi/projects/bundles/apache-xerces/trunk/src/main/java/org/jboss/osgi/xml/XMLParserActivatorExt.java	2009-08-28 15:33:48 UTC (rev 92968)
+++ projects/jboss-osgi/projects/bundles/apache-xerces/trunk/src/main/java/org/jboss/osgi/xml/XMLParserActivatorExt.java	2009-08-28 15:55:41 UTC (rev 92969)
@@ -23,6 +23,7 @@
 
 //$Id$
 
+import java.util.Arrays;
 import java.util.Hashtable;
 
 import javax.xml.parsers.DocumentBuilderFactory;
@@ -31,6 +32,8 @@
 import org.jboss.osgi.common.log.LogServiceTracker;
 import org.jboss.osgi.xml.internal.XMLParserActivator;
 import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
+import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.framework.ServiceReference;
 import org.osgi.service.log.LogService;
 
@@ -116,18 +119,23 @@
       props.put(XMLParserCapability.PARSER_PROVIDER, XMLParserCapability.PROVIDER_JBOSS_OSGI);
    }
 
-   private void logSAXParserFactory(BundleContext context)
+   private void logSAXParserFactory(BundleContext context) throws InvalidSyntaxException
    {
-      ServiceReference saxRef = context.getServiceReference(SAXParserFactory.class.getName());
-      if (saxRef != null)
+      ServiceReference[] saxRefs = context.getServiceReferences(SAXParserFactory.class.getName(), null);
+      if (saxRefs != null)
       {
-         Object factory = context.getService(saxRef);
-         log.log(LogService.LOG_DEBUG, "SAXParserFactory: " + factory.getClass().getName());
+         for (ServiceReference sref : saxRefs)
+         {
+            Object factory = context.getService(sref);
+            log.log(LogService.LOG_DEBUG, "SAXParserFactory: " + factory.getClass().getName());
 
-         for (String key : saxRef.getPropertyKeys())
-         {
-            Object value = saxRef.getProperty(key);
-            log.log(LogService.LOG_DEBUG, "   " + key + "=" + value);
+            for (String key : sref.getPropertyKeys())
+            {
+               Object value = sref.getProperty(key);
+               if (key.equals(Constants.OBJECTCLASS))
+                  value = Arrays.asList((String[])value);
+               log.log(LogService.LOG_DEBUG, "   " + key + "=" + value);
+            }
          }
       }
       else
@@ -136,18 +144,23 @@
       }
    }
 
-   private void logDOMParserFactory(BundleContext context)
+   private void logDOMParserFactory(BundleContext context) throws InvalidSyntaxException
    {
-      ServiceReference domRef = context.getServiceReference(DocumentBuilderFactory.class.getName());
-      if (domRef != null)
+      ServiceReference[] domRefs = context.getServiceReferences(DocumentBuilderFactory.class.getName(), null);
+      if (domRefs != null)
       {
-         Object factory = context.getService(domRef);
-         log.log(LogService.LOG_DEBUG, "DocumentBuilderFactory: " + factory.getClass().getName());
+         for (ServiceReference sref : domRefs)
+         {
+            Object factory = context.getService(sref);
+            log.log(LogService.LOG_DEBUG, "DocumentBuilderFactory: " + factory.getClass().getName());
 
-         for (String key : domRef.getPropertyKeys())
-         {
-            Object value = domRef.getProperty(key);
-            log.log(LogService.LOG_DEBUG, "   " + key + "=" + value);
+            for (String key : sref.getPropertyKeys())
+            {
+               Object value = sref.getProperty(key);
+               if (key.equals(Constants.OBJECTCLASS))
+                  value = Arrays.asList((String[])value);
+               log.log(LogService.LOG_DEBUG, "   " + key + "=" + value);
+            }
          }
       }
       else




More information about the jboss-cvs-commits mailing list