Author: remm Date: Sun Mar 4 12:38:54 2007 New Revision: 514468 URL: http://svn.apache.org/viewvc?view=rev&rev=514468 Log: - Minor optimization
Modified: tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/modeler/modules/MbeansDescriptorsDigesterSource.java Modified: tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/modeler/modules/MbeansDescriptorsDigesterSource.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/modeler/modules/MbeansDescriptorsDigesterSource.java?view=diff&rev=514468&r1=514467&r2=514468 ============================================================================== --- tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/modeler/modules/MbeansDescriptorsDigesterSource.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/tomcat/util/modeler/modules/MbeansDescriptorsDigesterSource.java Sun Mar 4 12:38:54 2007 @@ -38,6 +38,7 @@ String type; Object source; List mbeans=new ArrayList(); + protected static Digester digester = null; protected static Digester createDigester(Registry registry) { @@ -218,18 +219,24 @@ InputStream stream = (InputStream) source; - Digester digester = createDigester(registry); - // Push our registry object onto the stack - digester.push(mbeans); - - // Process the input file to configure our registry - try { - digester.parse(stream); - } catch (Exception e) { - log.error("Error digesting Registry data", e); - throw e; - } finally { - digester.reset(); + if (digester == null) { + digester = createDigester(registry); + } + + synchronized (digester) { + + // Process the input file to configure our registry + try { + // Push our registry object onto the stack + digester.push(mbeans); + digester.parse(stream); + } catch (Exception e) { + log.error("Error digesting Registry data", e); + throw e; + } finally { + digester.reset(); + } + } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]