com.verisign.epp.util

## Class EPPXMLSignatureSchemaCachingParser

- java.lang.Object
- - javax.xml.parsers.DocumentBuilder
  - - com.verisign.epp.util.EPPSchemaCachingParser
    - - com.verisign.epp.util.EPPXMLSignatureSchemaCachingParser

- All Implemented Interfaces:
    EPPSchemaCacher

      public class EPPXMLSignatureSchemaCachingParser
      extends EPPSchemaCachingParser

  Extension of the `EPPSchemaCachingParser` that disables the `NORMALIZE_DATA` feature that causes an issue in validating XML signatures. The `NORMALIZE_DATA` will trim elements based the rules defined by the XML schema, which invalidates the XML signature.

- - ### Field Summary

    - ### Fields inherited from class com.verisign.epp.util.EPPSchemaCachingParser

      `BIG_PRIME, CREATE_ENTITY_REF_NODES, DEFER_NODE_EXPANSION, DISALLOW_DOCTYPE_DECL, EXTERNAL_GENERAL_ENTITIES, EXTERNAL_PARAMETER_ENTITIES, INCLUDE_IGNORABLE_WHITE_SPACE, LOAD_DTD_GRAMMAR, LOAD_EXTERNAL_DTD, NAMESPACES_FEATURE_ID, NORMALIZE_DATA, POOL, SCHEMA_FULL_CHECKING_FEATURE_ID, SCHEMA_VALIDATION_FEATURE_ID, SYMBOL_TABLE, VALIDATION_FEATURE_ID, XMLGRAMMAR_POOL`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPXMLSignatureSchemaCachingParser()` Default constructor.
    `EPPXMLSignatureSchemaCachingParser(int aSymbolTableSize)` Constructor that takes the symbol table size.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `init()` Helper method to initialize this instance of `EPPSchemaCachingParser`.

    - ### Methods inherited from class com.verisign.epp.util.EPPSchemaCachingParser

      `addSchemaToCache, getDOMImplementation, getFeature, getProperty, getSymbolTableSize, getXmlSchemas, isNamespaceAware, isValidating, newDocument, parse, parse, parse, parse, parse, preloadSchemas, setEntityResolver, setErrorHandler, setFeature, setLockSchemaCache, setProperty, setSymbolTableSize`

    - ### Methods inherited from class javax.xml.parsers.DocumentBuilder

      `getSchema, isXIncludeAware, reset`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### EPPXMLSignatureSchemaCachingParser

          public EPPXMLSignatureSchemaCachingParser()

      Default constructor.

    - #### EPPXMLSignatureSchemaCachingParser

          public EPPXMLSignatureSchemaCachingParser(int aSymbolTableSize)

      Constructor that takes the symbol table size.
      Parameters:
        `aSymbolTableSize` - Symbol table size to use with the parser

  - ### Method Detail

    - #### init

          protected void init()
                       throws EPPParserException

      Helper method to initialize this instance of `EPPSchemaCachingParser`.
      Overrides:
        `init` in class `EPPSchemaCachingParser`
      Throws:
        `EPPParserException` - Error initializing `EPPSchemaCachingParser`