Package com.verisign.epp.framework.registry.v02

## Class EPPRegistryHandler

- java.lang.Object
- - com.verisign.epp.framework.registry.v02.EPPRegistryHandler

- All Implemented Interfaces:
    `EPPEventHandler`
  Direct Known Subclasses:
    `RegistryHandler`

      public abstract class EPPRegistryHandler
      extends java.lang.Object
      implements EPPEventHandler

  The `EPPRegistryHandler` class provides an interface for handling EPP Registry Commands in a Server implementation. EPPEvents are handled by the handleEvent() method here and routed to the appropriate abstract member function. Subclasses should override the abstract methods to define the desired behavior of a particular command when it is received. A subclassed instance of `EPPRegistryHandler` should be registered with the `EPPDispatcher` so that EEPEvents related to the Registry Mapping will be handled there.
  See Also:
    `EPPEventHandler`, `EPPEvent`

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EPPRegistryHandler()` | Construct an instance of `EPPRegistryHandler` that automatically loads the `EPPRegistryMapFactory` into the `EPPFactory`.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected abstract EPPEventResponse` | `doRegistryCheck​(EPPEvent aEvent, java.lang.Object aData)` | Invoked when a Registry Check command is received.
    `protected abstract EPPEventResponse` | `doRegistryCreate​(EPPEvent aEvent, java.lang.Object aData)` | Invoked when a Registry Create command is received.
    `protected abstract EPPEventResponse` | `doRegistryDelete​(EPPEvent aEvent, java.lang.Object aData)` | Invoked when a Registry Delete command is received.
    `protected abstract EPPEventResponse` | `doRegistryInfo​(EPPEvent aEvent, java.lang.Object aData)` | Invoked when a Registry Info command is received.
    `protected abstract EPPEventResponse` | `doRegistryUpdate​(EPPEvent aEvent, java.lang.Object aData)` | Invoked when a Registry Update command is received.
    `java.lang.String` | `getNamespace()` | Gets the XML namespace associated with this handler.
    `EPPEventResponse` | `handleEvent​(EPPEvent aEvent, java.lang.Object aData)` | This method receives an `EPPEvent` and routes it to the appropriate abstract method.
    `protected void` | `postHandleEvent​(EPPEvent aEvent, java.lang.Object aData)` | Handles any common behavior that all registry commands need to execute after they execute their command specific behavior.
    `protected void` | `preHandleEvent​(EPPEvent aEvent, java.lang.Object aData)` | Handles any common behavior that all registry commands need to execute before they execute their command specific behavior.

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

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

- - ### Constructor Detail

    - #### EPPRegistryHandler

          public EPPRegistryHandler()

      Construct an instance of `EPPRegistryHandler` that automatically loads the `EPPRegistryMapFactory` into the `EPPFactory`.

  - ### Method Detail

    - #### handleEvent

          public EPPEventResponse handleEvent​(EPPEvent aEvent,
                                              java.lang.Object aData)
                                       throws EPPEventException

      This method receives an `EPPEvent` and routes it to the appropriate abstract method.
      Specified by:
        `handleEvent` in interface `EPPEventHandler`
      Parameters:
        `aEvent` - An `EPPEvent` that contains the `EPPCommand`
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler` instance
      Returns:
        Result of handling the event
      Throws:
        `EPPEventException` - Thrown if an unrecognized `EPPEvent` is received

    - #### doRegistryInfo

          protected abstract EPPEventResponse doRegistryInfo​(EPPEvent aEvent,
                                                             java.lang.Object aData)

      Invoked when a Registry Info command is received. Subclasses should define the behavior when a Registry Info command is received.
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`
      Returns:
        EPPEventResponse The response that should be sent back to the client.

    - #### doRegistryCheck

          protected abstract EPPEventResponse doRegistryCheck​(EPPEvent aEvent,
                                                              java.lang.Object aData)

      Invoked when a Registry Check command is received. Subclasses should define the behavior when a Registry Check command is received.
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`
      Returns:
        EPPEventResponse The response that should be sent back to the client.

    - #### doRegistryCreate

          protected abstract EPPEventResponse doRegistryCreate​(EPPEvent aEvent,
                                                               java.lang.Object aData)

      Invoked when a Registry Create command is received. Subclasses should define the behavior when a Registry Create command is received.
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`.
      Returns:
        The `EPPEventResponse` that should be sent back to the client.

    - #### doRegistryUpdate

          protected abstract EPPEventResponse doRegistryUpdate​(EPPEvent aEvent,
                                                               java.lang.Object aData)

      Invoked when a Registry Update command is received. Subclasses should define the behavior when a Registry Update command is received.
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`
      Returns:
        The `EPPEventResponse` that should be sent back to the client.

    - #### doRegistryDelete

          protected abstract EPPEventResponse doRegistryDelete​(EPPEvent aEvent,
                                                               java.lang.Object aData)

      Invoked when a Registry Delete command is received. Subclasses should define the behavior when a Registry Delete command is received.
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`
      Returns:
        The `EPPEventResponse` that should be sent back to the client.

    - #### getNamespace

          public java.lang.String getNamespace()

      Gets the XML namespace associated with this handler.
      Specified by:
        `getNamespace` in interface `EPPEventHandler`
      Returns:
        `EPPRegistryMapFactory.NS`

    - #### preHandleEvent

          protected void preHandleEvent​(EPPEvent aEvent,
                                        java.lang.Object aData)
                                 throws EPPHandleEventException

      Handles any common behavior that all registry commands need to execute before they execute their command specific behavior. The default implementation does nothing.
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`
      Throws:
        `EPPHandleEventException` - Thrown if an error condition occurs. It must contain an `EPPEventResponse`

    - #### postHandleEvent

          protected void postHandleEvent​(EPPEvent aEvent,
                                         java.lang.Object aData)
                                  throws EPPHandleEventException

      Handles any common behavior that all registry commands need to execute after they execute their command specific behavior. The default implementation does nothing
      Parameters:
        `aEvent` - The `EPPEvent` that is being handled
        `aData` - Any data that a Server needs to send to this `EPPRegistryHandler`
      Throws:
        `EPPHandleEventException` - Thrown if an error condition occurs. It must contain an `EPPEventResponse`