com.verisign.epp.framework

## Class EPPContactHandler

- java.lang.Object
- - com.verisign.epp.framework.EPPContactHandler

- All Implemented Interfaces:
    EPPEventHandler
  Direct Known Subclasses:
    ContactHandler, NSContactHandler, SecureAuthInfoContactHandler

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

  The `EPPContactHandler` class provides an interface for handling EPP Contact 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 `EPPContactHandler` should be registered with the `EPPDispatcher` so that EEPEvents related to the Contact Mapping will be handled there.
  See Also:
    `EPPEventHandler`, `EPPEvent`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EPPContactHandler()` Construct an instance of `EPPContactHandler`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected abstract EPPEventResponse` | `doContactCheck(EPPEvent aEvent, java.lang.Object aData)` Invoked when a Contact Ping command is received.
    `protected abstract EPPEventResponse` | `doContactCreate(EPPEvent aEvent, java.lang.Object aData)` Invoked when a Contact Create command is received.
    `protected abstract EPPEventResponse` | `doContactDelete(EPPEvent aEvent, java.lang.Object aData)` Invoked when a Contact Delete command is received.
    `protected abstract EPPEventResponse` | `doContactInfo(EPPEvent aEvent, java.lang.Object aData)` Invoked when a Contact Info command is received.
    `protected abstract EPPEventResponse` | `doContactTransfer(EPPEvent aEvent, java.lang.Object aData)` Invoked when a Contact Transfer command is received.
    `protected abstract EPPEventResponse` | `doContactUpdate(EPPEvent aEvent, java.lang.Object aData)` Invoked when a Contact Update command is received.
    `java.lang.String` | `getNamespace()` Returns the Namespace that this handler supports.
    `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 contact 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 contact 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

    - #### EPPContactHandler

          public EPPContactHandler()

      Construct an instance of `EPPContactHandler`

  - ### Method Detail

    - #### getNamespace

          public final java.lang.String getNamespace()

      Returns the Namespace that this handler supports. In this case, contact.
      Specified by:
        `getNamespace` in interface `EPPEventHandler`
      Returns:
        String The Namespace that this handler supports

    - #### handleEvent

          public final 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 `EPPContactHandler` instance
      Returns:
        DOCUMENT ME!
      Throws:
        `EPPEventException` - Thrown if an unrecognized `EPPEvent` is received

    - #### preHandleEvent

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

      Handles any common behavior that all contact 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 `EPPContactHandler`
      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 contact 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 `EPPContactHandler`
      Throws:
        `EPPHandleEventException` - Thrown if an error condition occurs. It must contain an `EPPEventResponse`

    - #### doContactCreate

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

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

    - #### doContactDelete

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

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

    - #### doContactInfo

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

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

    - #### doContactCheck

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

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

    - #### doContactTransfer

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

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

    - #### doContactUpdate

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

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