--- old/src/com/sun/org/apache/xerces/internal/utils/XMLSecurityPropertyManager.java Fri Nov 15 11:27:42 2013 +++ new/src/com/sun/org/apache/xerces/internal/utils/XMLSecurityPropertyManager.java Fri Nov 15 11:27:41 2013 @@ -91,6 +91,19 @@ readSystemProperties(); } + /** + * Clone a XMLSecurityPropertyManager + * @param propertyManager the base XMLSecurityPropertyManager + */ + public XMLSecurityPropertyManager(XMLSecurityPropertyManager propertyManager) { + values = new String[Property.values().length]; + if (propertyManager != null) { + for (Property property : Property.values()) { + values[property.ordinal()] = propertyManager.getValue(property); + states[property.ordinal()] = propertyManager.getState(property); + } + } + } /** * Set limit by property name and state @@ -189,6 +202,15 @@ } /** + * Return the state of a property + * @param property + * @return return the state of the property + */ + public State getState(Property property) { + return states[property.ordinal()]; + } + + /** * Read from system properties, or those in jaxp.properties */ private void readSystemProperties() {