com.verisign.epp.framework
Class EPPDispatcher

java.lang.Object
  extended by com.verisign.epp.framework.EPPDispatcher

public class EPPDispatcher
extends java.lang.Object

A Singleton class that delegates message assembly to an EPPAssembler then routes messages to the appropriate EPPEventHandler.

Version:
$Revision: 1.3 $
Author:
$Author: jim $
See Also:
EPPEventHandler, EPPEvent

Method Summary
static EPPDispatcher getInstance()
          Gets the one and only instance of the EPPDispatcher
 void processConnection(java.io.InputStream aInputStream, java.io.OutputStream aOutputStream, java.lang.Object aData)
          Returns the EPPEventResponse that new connecting clients should receive.
 void processMessage(java.io.InputStream aInputStream, java.io.OutputStream aOutputStream, java.lang.Object aData)
          Creates an EPPMessage, sends the message to the appropriate EPPEventHandler, and then sends the response on the OutputStream.
 void registerConnectionHandler(EPPConnectionHandler aConnectionHandler)
          Registers a EPPConnectionHandler for notification of connection events
 void registerHandler(EPPEventHandler aHandler)
          Registers an EPPEvenHandler for notification of Events.
 void send(EPPMessage aMessage, java.io.OutputStream aOutputStream)
          Sends an EPP message to the client.
 void send(EPPMessage aMessage, java.io.OutputStream aOutputStream, java.lang.Object aData)
          Sends an EPP message to the client.
 void setAssembler(EPPAssembler aAssembler)
          Sets the Assembler.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static EPPDispatcher getInstance()
Gets the one and only instance of the EPPDispatcher

Returns:
Dispatcher The dispatcher

processConnection

public void processConnection(java.io.InputStream aInputStream,
                              java.io.OutputStream aOutputStream,
                              java.lang.Object aData)
Returns the EPPEventResponse that new connecting clients should receive. In this case the EPPGreeting.

Parameters:
aInputStream - The InputStream of the new connection.
aOutputStream - The OutputStream to send the response on.
aData - Any extra data that the connection handler may need.

setAssembler

public void setAssembler(EPPAssembler aAssembler)
Sets the Assembler. The format of the Input/Output streams determines the type of Assembler that should be used.

Parameters:
aAssembler - The type of Assembler to use.

processMessage

public void processMessage(java.io.InputStream aInputStream,
                           java.io.OutputStream aOutputStream,
                           java.lang.Object aData)
                    throws EPPEventException,
                           EPPAssemblerException
Creates an EPPMessage, sends the message to the appropriate EPPEventHandler, and then sends the response on the OutputStream.

Parameters:
aInputStream - The InputStream used to create the EPPMessage
aOutputStream - The OutputStream to send the EPPResponse on
aData - Any additional data that may be required by the EPPEventHandler
Throws:
EPPEventException - Exception related to the handling of an event
EPPAssemblerException - Exception related to the assembling/de-assembling of messages. EPPAssemberException.isFatal can be called to determine if the exception is a fatal exception for the client session.

registerHandler

public void registerHandler(EPPEventHandler aHandler)
Registers an EPPEvenHandler for notification of Events.

Parameters:
aHandler - The EPPEventhandler to register

registerConnectionHandler

public void registerConnectionHandler(EPPConnectionHandler aConnectionHandler)
Registers a EPPConnectionHandler for notification of connection events

Parameters:
aConnectionHandler - The connection handler to registier

send

public void send(EPPMessage aMessage,
                 java.io.OutputStream aOutputStream)
          throws EPPAssemblerException
Sends an EPP message to the client.

Parameters:
aMessage - EPP Message to send to the client
aOutputStream - Output stream to write the EPP Message
Throws:
EPPAssemblerException - Error writing message to output stream

send

public void send(EPPMessage aMessage,
                 java.io.OutputStream aOutputStream,
                 java.lang.Object aData)
          throws EPPAssemblerException
Sends an EPP message to the client.

Parameters:
aMessage - EPP Message to send to the client
aOutputStream - Output stream to write the EPP Message
aData - whatever data should be passed to the Assembler
Throws:
EPPAssemblerException - Error writing message to output stream


Copyright ? VeriSign Inc. All Rights Reserved.