neeraj      2003/01/06 06:00:58

  Modified:    java/src/org/apache/xerces/impl Tag: jaxp_1_2_2_branch
                        XMLEntityManager.java
  Log:
  EntityExpansionLimit can be set via system property "entityExpansionLimit". It would 
allow all the applications to put constraint on entity expansion limit without 
recompiling their code. Also Resetting the fEntityExpansionCount to zero b/w 
subsequent parse.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.53.2.2  +15 -3     xml-xerces/java/src/org/apache/xerces/impl/XMLEntityManager.java
  
  Index: XMLEntityManager.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/XMLEntityManager.java,v
  retrieving revision 1.53.2.1
  retrieving revision 1.53.2.2
  diff -u -r1.53.2.1 -r1.53.2.2
  --- XMLEntityManager.java     12 Dec 2002 10:42:36 -0000      1.53.2.1
  +++ XMLEntityManager.java     6 Jan 2003 14:00:58 -0000       1.53.2.2
  @@ -184,6 +184,8 @@
       protected static final String ENTITY_EXPANSION_LIMIT  =
           Constants.XERCES_PROPERTY_PREFIX + Constants.ENTITY_EXPANSION_LIMIT;
   
  +    //SYSTEM PROPERTY
  +    protected static final String SYSTEM_PROPERTY_ENTITY_EXPANSION_LIMIT = 
"entityExpansionLimit" ;    
   
       // recognized features and properties
   
  @@ -1067,12 +1069,22 @@
           catch (XMLConfigurationException e) {
               fEntityExpansionLimit = null;
           }
  +                
  +        //its good to check for system property value again (though this is little 
overhead) for every parse, 
  +        //an application might set the different limit for another XML document
           
  -        // initialize state
  +        //determines the integer value of the system property
  +        Integer entityExpansionLimit = 
Integer.getInteger(SYSTEM_PROPERTY_ENTITY_EXPANSION_LIMIT);
  +        if(entityExpansionLimit != null){
  +            fEntityExpansionLimit = entityExpansionLimit ;
  +        }
  +
  +        // initialize state        
           fStandalone = false;
           fEntities.clear();
           fEntityStack.removeAllElements();
  -
  +        //reset entity expansion count.
  +        fEntityExpansionCount = 0 ;
           fCurrentEntity = null;
   
           // DEBUG
  
  
  

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

Reply via email to