mrglavas    2004/02/11 08:57:28

  Modified:    java/src/org/apache/xerces/parsers XML11Configuration.java
                        BasicParserConfiguration.java
               java/src/org/apache/xerces/util
                        ParserConfigurationSettings.java
               java/src/org/apache/xerces/dom DOMConfigurationImpl.java
  Log:
  Performance: Replace some Vectors with unsynchronized
  ArrayLists.  We don't require thread-safety in our
  configurations so this should speed us up a bit on reset.
  
  Revisit for replacing Hashtables with unsynch'd 
  Hashmaps. Hashmaps allow null entries so we need to 
  be careful in how we use them.
  
  Revision  Changes    Path
  1.15      +22 -21    
xml-xerces/java/src/org/apache/xerces/parsers/XML11Configuration.java
  
  Index: XML11Configuration.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/parsers/XML11Configuration.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- XML11Configuration.java   26 Jan 2004 17:28:10 -0000      1.14
  +++ XML11Configuration.java   11 Feb 2004 16:57:28 -0000      1.15
  @@ -58,6 +58,7 @@
   package org.apache.xerces.parsers;
   
   import java.io.IOException;
  +import java.util.ArrayList;
   import java.util.Hashtable;
   import java.util.Locale;
   import java.util.Vector;
  @@ -294,13 +295,13 @@
        protected Locale fLocale;
   
        /** XML 1.0 Components. */
  -     protected Vector fComponents;
  +     protected ArrayList fComponents;
       
        /** XML 1.1. Components. */
  -     protected Vector fXML11Components = null;
  +     protected ArrayList fXML11Components = null;
        
        /** Common components: XMLEntityManager, XMLErrorReporter, XMLSchemaValidator 
*/
  -     protected Vector fCommonComponents = null;
  +     protected ArrayList fCommonComponents = null;
   
        /** The document handler. */
        protected XMLDocumentHandler fDocumentHandler;
  @@ -450,15 +451,15 @@
   
                // create a vector to hold all the components in use
                // XML 1.0 specialized components
  -             fComponents = new Vector();
  +             fComponents = new ArrayList();
                // XML 1.1 specialized components
  -             fXML11Components = new Vector();
  +             fXML11Components = new ArrayList();
                // Common components for XML 1.1. and XML 1.0
  -             fCommonComponents = new Vector();
  +             fCommonComponents = new ArrayList();
   
                // create storage for recognized features and properties
  -             fRecognizedFeatures = new Vector();
  -             fRecognizedProperties = new Vector();
  +             fRecognizedFeatures = new ArrayList();
  +             fRecognizedProperties = new ArrayList();
   
                // create table for features and properties
                fFeatures = new Hashtable();
  @@ -886,20 +887,20 @@
                // forward to every XML 1.0 component
                int count = fComponents.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fComponents.get(i);
                        c.setFeature(featureId, state);
                }
                // forward it to common components
                count = fCommonComponents.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fCommonComponents.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fCommonComponents.get(i);
                        c.setFeature(featureId, state);
                }
                                
                // forward to every XML 1.1 component
                count = fXML11Components.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fXML11Components.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fXML11Components.get(i);
                        try{            
                                c.setFeature(featureId, state);
                        }
  @@ -924,19 +925,19 @@
                // forward to every XML 1.0 component
                int count = fComponents.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fComponents.get(i);
                        c.setProperty(propertyId, value);
                }
                // forward it to every common Component
                count = fCommonComponents.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fCommonComponents.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fCommonComponents.get(i);
                        c.setProperty(propertyId, value);
                }
                // forward it to every XML 1.1 component
                count = fXML11Components.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fXML11Components.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fXML11Components.get(i);
                        try{                    
                                c.setProperty(propertyId, value);
                        }
  @@ -962,7 +963,7 @@
        protected void reset() throws XNIException {
                int count = fComponents.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fComponents.get(i);
                        c.reset(this);
                }
   
  @@ -975,7 +976,7 @@
                // reset common components
                int count = fCommonComponents.size();
                for (int i = 0; i < count; i++) {
  -                     XMLComponent c = (XMLComponent) fCommonComponents.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fCommonComponents.get(i);
                        c.reset(this);
                }
   
  @@ -989,7 +990,7 @@
                // reset every component
                int count = fXML11Components.size();
                for (int i = 0; i < count; i++) {                       
  -                     XMLComponent c = (XMLComponent) fXML11Components.elementAt(i);
  +                     XMLComponent c = (XMLComponent) fXML11Components.get(i);
                        c.reset(this);
                }
   
  @@ -1398,7 +1399,7 @@
           if (fComponents.contains(component)) {
               return;
           }
  -        fComponents.addElement(component);
  +        fComponents.add(component);
           addRecognizedParamsAndSetDefaults(component);
        
       } // addComponent(XMLComponent)
  @@ -1416,7 +1417,7 @@
           if (fCommonComponents.contains(component)) {
               return;
           }
  -        fCommonComponents.addElement(component);
  +        fCommonComponents.add(component);
           addRecognizedParamsAndSetDefaults(component);
   
       } // addCommonComponent(XMLComponent)
  @@ -1434,7 +1435,7 @@
           if (fXML11Components.contains(component)) {
               return;
           }
  -        fXML11Components.addElement(component);
  +        fXML11Components.add(component);
           addRecognizedParamsAndSetDefaults(component);
           
       } // addXML11Component(XMLComponent)
  
  
  
  1.21      +10 -10    
xml-xerces/java/src/org/apache/xerces/parsers/BasicParserConfiguration.java
  
  Index: BasicParserConfiguration.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/parsers/BasicParserConfiguration.java,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- BasicParserConfiguration.java     26 Jan 2004 17:28:10 -0000      1.20
  +++ BasicParserConfiguration.java     11 Feb 2004 16:57:28 -0000      1.21
  @@ -58,9 +58,9 @@
   package org.apache.xerces.parsers;
   
   import java.io.IOException;
  +import java.util.ArrayList;
   import java.util.Hashtable;
   import java.util.Locale;
  -import java.util.Vector;
   
   import org.apache.xerces.impl.Constants;
   import org.apache.xerces.util.ParserConfigurationSettings;
  @@ -190,7 +190,7 @@
       protected Locale fLocale;
   
       /** Components. */
  -    protected Vector fComponents;
  +    protected ArrayList fComponents;
   
       // handlers
   
  @@ -236,11 +236,11 @@
           super(parentSettings);
   
           // create a vector to hold all the components in use
  -        fComponents = new Vector();
  +        fComponents = new ArrayList();
   
           // create storage for recognized features and properties
  -        fRecognizedFeatures = new Vector();
  -        fRecognizedProperties = new Vector();
  +        fRecognizedFeatures = new ArrayList();
  +        fRecognizedProperties = new ArrayList();
   
           // create table for features and properties
           fFeatures = new Hashtable();
  @@ -292,7 +292,7 @@
           if (fComponents.contains(component)) {
               return;
           }
  -        fComponents.addElement(component);
  +        fComponents.add(component);
   
           // register component's recognized features
           String[] recognizedFeatures = component.getRecognizedFeatures();
  @@ -482,7 +482,7 @@
           // forward to every component
           int count = fComponents.size();
           for (int i = 0; i < count; i++) {
  -            XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +            XMLComponent c = (XMLComponent) fComponents.get(i);
               c.setFeature(featureId, state);
           }
           // save state if noone "objects"
  @@ -502,7 +502,7 @@
           // forward to every component
           int count = fComponents.size();
           for (int i = 0; i < count; i++) {
  -            XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +            XMLComponent c = (XMLComponent) fComponents.get(i);
               c.setProperty(propertyId, value);
           }
   
  @@ -540,7 +540,7 @@
           // reset every component
           int count = fComponents.size();
           for (int i = 0; i < count; i++) {
  -            XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +            XMLComponent c = (XMLComponent) fComponents.get(i);
               c.reset(this);
           }
   
  
  
  
  1.8       +8 -7      
xml-xerces/java/src/org/apache/xerces/util/ParserConfigurationSettings.java
  
  Index: ParserConfigurationSettings.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/util/ParserConfigurationSettings.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- ParserConfigurationSettings.java  1 Dec 2003 05:06:18 -0000       1.7
  +++ ParserConfigurationSettings.java  11 Feb 2004 16:57:28 -0000      1.8
  @@ -57,6 +57,7 @@
   
   package org.apache.xerces.util;
   
  +import java.util.ArrayList;
   import java.util.Hashtable;
   import java.util.Vector;
   
  @@ -92,13 +93,13 @@
       // data
   
       /** Recognized properties. */
  -    protected Vector fRecognizedProperties;
  +    protected ArrayList fRecognizedProperties;
   
       /** Properties. */
       protected Hashtable fProperties;
   
       /** Recognized features. */
  -    protected Vector fRecognizedFeatures;
  +    protected ArrayList fRecognizedFeatures;
   
       /** Features. */
       protected Hashtable fFeatures;
  @@ -122,8 +123,8 @@
       public ParserConfigurationSettings(XMLComponentManager parent) {
   
           // create storage for recognized features and properties
  -        fRecognizedFeatures = new Vector();
  -        fRecognizedProperties = new Vector();
  +        fRecognizedFeatures = new ArrayList();
  +        fRecognizedProperties = new ArrayList();
   
           // create table for features and properties
           fFeatures = new Hashtable();
  @@ -152,7 +153,7 @@
           for (int i = 0; i < featureIdsCount; i++) {
               String featureId = featureIds[i];
               if (!fRecognizedFeatures.contains(featureId)) {
  -                fRecognizedFeatures.addElement(featureId);
  +                fRecognizedFeatures.add(featureId);
               }
           }
   
  @@ -194,7 +195,7 @@
           for (int i = 0; i < propertyIdsCount; i++) {
               String propertyId = propertyIds[i];
               if (!fRecognizedProperties.contains(propertyId)) {
  -                fRecognizedProperties.addElement(propertyId);
  +                fRecognizedProperties.add(propertyId);
               }
           }
   
  
  
  
  1.20      +8 -7      
xml-xerces/java/src/org/apache/xerces/dom/DOMConfigurationImpl.java
  
  Index: DOMConfigurationImpl.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/dom/DOMConfigurationImpl.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- DOMConfigurationImpl.java 29 Jan 2004 21:13:09 -0000      1.19
  +++ DOMConfigurationImpl.java 11 Feb 2004 16:57:28 -0000      1.20
  @@ -58,6 +58,7 @@
   package org.apache.xerces.dom;
   
   import java.io.IOException;
  +import java.util.ArrayList;
   import java.util.Hashtable;
   import java.util.Locale;
   import java.util.Vector;
  @@ -200,7 +201,7 @@
       protected SymbolTable fSymbolTable;
   
       /** Components. */
  -    protected Vector fComponents;
  +    protected ArrayList fComponents;
   
       protected ValidationManager fValidationManager;
   
  @@ -248,8 +249,8 @@
           super(parentSettings);
   
           // create storage for recognized features and properties
  -        fRecognizedFeatures = new Vector();
  -        fRecognizedProperties = new Vector();
  +        fRecognizedFeatures = new ArrayList();
  +        fRecognizedProperties = new ArrayList();
   
           // create table for features and properties
           fFeatures = new Hashtable();
  @@ -302,7 +303,7 @@
           }
           fSymbolTable = symbolTable;
   
  -        fComponents = new Vector();
  +        fComponents = new ArrayList();
   
           setProperty(SYMBOL_TABLE, fSymbolTable);
           fErrorReporter = new XMLErrorReporter();
  @@ -1027,7 +1028,7 @@
   
           int count = fComponents.size();
           for (int i = 0; i < count; i++) {
  -            XMLComponent c = (XMLComponent) fComponents.elementAt(i);
  +            XMLComponent c = (XMLComponent) fComponents.get(i);
               c.reset(this);
           }
   
  @@ -1081,7 +1082,7 @@
           if (fComponents.contains(component)) {
               return;
           }
  -        fComponents.addElement(component);
  +        fComponents.add(component);
   
           // register component's recognized features
           String[] recognizedFeatures = component.getRecognizedFeatures();
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to