eneter.messaging.messagingsystems.connectionprotocols
Interface IProtocolFormatter

All Known Implementing Classes:
EasyProtocolFormatter, EneterProtocolFormatter

public interface IProtocolFormatter

Declares functionality to encode/decode messages used for the communication between channels. The implementaton of this interface defines how 'open connection', 'close connection' and 'message data' messages shall be encoded and decoded during communication between channels.


Method Summary
 ProtocolMessage decodeMessage(java.io.InputStream readStream)
          Decodes message from the stream.
 ProtocolMessage decodeMessage(java.lang.Object readMessage)
          Decodes message from the given object.
 java.lang.Object encodeCloseConnectionMessage(java.lang.String responseReceiverId)
          Encodes the close connection request message.
 void encodeCloseConnectionMessage(java.lang.String responseReceiverId, java.io.OutputStream outputSream)
          Encodes the close connection request message to the stream.
 java.lang.Object encodeMessage(java.lang.String responseReceiverId, java.lang.Object message)
          Encodes the data message.
 void encodeMessage(java.lang.String responseReceiverId, java.lang.Object message, java.io.OutputStream outputSream)
          Encodes the data message into the stream.
 java.lang.Object encodeOpenConnectionMessage(java.lang.String responseReceiverId)
          Encodes the open connection request message.
 void encodeOpenConnectionMessage(java.lang.String responseReceiverId, java.io.OutputStream outputSream)
          Encodes the open connection request message to the stream.
 

Method Detail

encodeOpenConnectionMessage

java.lang.Object encodeOpenConnectionMessage(java.lang.String responseReceiverId)
                                             throws java.lang.Exception
Encodes the open connection request message. The message is used by the output channel to open the connection with the input channel.
If the open connection message is not used it shall return null.

Parameters:
responseReceiverId - id of the client opening the connection.
Returns:
encoded open connection message.
Throws:
java.lang.Exception

encodeOpenConnectionMessage

void encodeOpenConnectionMessage(java.lang.String responseReceiverId,
                                 java.io.OutputStream outputSream)
                                 throws java.lang.Exception
Encodes the open connection request message to the stream. The message is used by the output channel to open the connection with the input channel.
If the open connection message is not used it shall just return without writing to the stream.

Parameters:
responseReceiverId - id of the client opening the connection.
outputSream - output where the encoded open connection message is written
Throws:
java.lang.Exception

encodeCloseConnectionMessage

java.lang.Object encodeCloseConnectionMessage(java.lang.String responseReceiverId)
                                              throws java.lang.Exception
Encodes the close connection request message. The message is used by the output channel to close the connection with the input channel. It is also used by input channel when it disconnects the output channel.
If the close connection message is not used it shall return null.

Parameters:
responseReceiverId - id of the client that wants to disconnect or that will be disconnected
Returns:
encoded close connection message
Throws:
java.lang.Exception

encodeCloseConnectionMessage

void encodeCloseConnectionMessage(java.lang.String responseReceiverId,
                                  java.io.OutputStream outputSream)
                                  throws java.lang.Exception
Encodes the close connection request message to the stream. The message is used by the output channel to close the connection with the input channel. It is also used by input channel when it disconnects the output channel.
If the close connection message is not used it shall just return without writing to the stream.

Parameters:
responseReceiverId - id of the client that wants to disconnect or that will be disconnected
outputSream - output where the encoded close connection message is written
Throws:
java.lang.Exception

encodeMessage

java.lang.Object encodeMessage(java.lang.String responseReceiverId,
                               java.lang.Object message)
                               throws java.lang.Exception
Encodes the data message. The message is used by the output as well as input channel to send the data message.

Parameters:
responseReceiverId - client id.
message - serialized message to be sent.
Returns:
encoded data message
Throws:
java.lang.Exception

encodeMessage

void encodeMessage(java.lang.String responseReceiverId,
                   java.lang.Object message,
                   java.io.OutputStream outputSream)
                   throws java.lang.Exception
Encodes the data message into the stream. The message is used by the output as well as input channel to send the data message.

Parameters:
responseReceiverId - id of the client that wants to send the message.
message - serialized message to be sent.
outputSream - output where the encoded message is written
Throws:
java.lang.Exception

decodeMessage

ProtocolMessage decodeMessage(java.io.InputStream readStream)
Decodes message from the stream.

Parameters:
readStream - stream to be read
Returns:
decoded message

decodeMessage

ProtocolMessage decodeMessage(java.lang.Object readMessage)
Decodes message from the given object.

Parameters:
readMessage - reference to the object.
Returns:
decoded message