Package com.verisign.epp.codec.gen

## Class EPPExtFactory

- java.lang.Object
- - com.verisign.epp.codec.gen.EPPExtFactory

- Direct Known Subclasses:
    `EPPAddlEmailExtFactory`, `EPPAllocationTokenExtFactory`, `EPPChangePollExtFactory`, `EPPCoaExtFactory`, `EPPFeeExtFactory`, `EPPIdnExtFactory`, `EPPIdnMapExtFactory`, `EPPLaunchExtFactory`, `EPPLaunchPolicyExtFactory`, `EPPLoginSecExtFactory`, `EPPLoginSecPolicyExtFactory`, `EPPNamestoreExtExtFactory`, `EPPOrgExtFactory`, `EPPPersRegExtFactory`, `EPPRelatedDomainExtFactory`, `EPPRgpExtFactory`, `EPPSecDNSExtFactory`, `EPPSecDNSExtFactory`, `EPPSecureAuthInfoExtFactory`, `EPPSyncExtFactory`, `EPPTtlExtFactory`, `EPPUnhandledNamespacesExtFactory`, `EPPVerificationCodeExtFactory`, `EPPWhoisExtFactory`

      public abstract class EPPExtFactory
      extends java.lang.Object

  Represents an interface, used by `EPPFactory`, and implemented by concrete EPP Command Extensions for the creation of concrete `EPPCodecComponent` and `EPPProtocolExtension` instances from a command extension XML element. Each `EPPExtFactory` is associated with an XML namespace, and is delegated the responsibility by `EPPFactory` of creating concrete `EPPCodecComponent` objects representing an EPP extension.
  For example, a Domain Create Command might include a price extension element, referencing an XML namespace of "urn:verisign:xmlns:pricing" and has a concrete `EPPExtFactory` named `EPPPricingExtFactory` that will create all of the pricing extension objects used by `EPPCommand`'s and `EPPResponse`'s.
  See Also:
    `EPPFactory`

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPExtFactory()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract EPPCodecComponent` | `createExtension​(org.w3c.dom.Element aExtensionElm)` | Creates a concrete `EPPCodecComponent` from an XML element that represents an EPP extension.
    `abstract EPPProtocolExtension` | `createProtocolExtension​(org.w3c.dom.Element aExtensionElm)` | Creates a concrete `EPPProtocolExtension` from an XML element that represents an EPP protocol extension.
    `abstract EPPService` | `getService()` | Gets the service information associated with the concrete `EPPExtFactory`.
    `java.util.Set<java.lang.String>` | `getXmlSchemas()` | Gets the list of XML schemas that need to be pre-loaded into the XML Parser.

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

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

- - ### Constructor Detail

    - #### EPPExtFactory

          public EPPExtFactory()

  - ### Method Detail

    - #### createExtension

          public abstract EPPCodecComponent createExtension​(org.w3c.dom.Element aExtensionElm)
                                                     throws EPPCodecException

      Creates a concrete `EPPCodecComponent` from an XML element that represents an EPP extension. For example, a `EPPPricingQueryExt` could be created by `EPPPricingExtFactory` given the <pricing:query> XML element.
      Parameters:
        `aExtensionElm` - extension XML element. For example <pricing:query>.
      Returns:
        Concrete `EPPCodecComponent` associated with the extension XML element. For example, `EPPPricingQueryExt` might be associated with an <pricing:query> element.
      Throws:
        `EPPCodecException` - Error creating the concrete `EPPCodecComponent`

    - #### createProtocolExtension

          public abstract EPPProtocolExtension createProtocolExtension​(org.w3c.dom.Element aExtensionElm)
                                                                throws EPPCodecException

      Creates a concrete `EPPProtocolExtension` from an XML element that represents an EPP protocol extension.
      Parameters:
        `aExtensionElm` - extension XML element.
      Returns:
        Concrete `EPPProtocolExtension` associated with the extension XML element.
      Throws:
        `EPPCodecException` - Error creating the concrete `EPPProtocolExtension`

    - #### getService

          public abstract EPPService getService()

      Gets the service information associated with the concrete `EPPExtFactory`. The service information is used by `EPPFactory` for extracting the XML namespace associated with the extension factory.
      Returns:
        service description associated with the concret `EPPExtFactory`.

    - #### getXmlSchemas

          public java.util.Set<java.lang.String> getXmlSchemas()

      Gets the list of XML schemas that need to be pre-loaded into the XML Parser.
      Returns:
        `Set` of `String` XML Schema names that should be pre-loaded in the XML Parser. Defaults to returning `null` to indicate that no XML schemas need to be loaded.