|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecteneter.messaging.messagingsystems.connectionprotocols.EasyProtocolFormatter
public class EasyProtocolFormatter
Simple and very fast encoding/decoding for TCP, WebSocket and multicast/broadcast UDP.
This protocol formatter is stripped to the bare minimum. It does not encode OpenConnection and CloseConnection
messages but it encodes only data messages.
Therefore it can be used only with communication protocols which have own mechanisms to open and close the
communication (TCP and WebSockets) or opening and closing the connection is not needed (multicast/broadcast UDP).
The simplicity of this formatter provides a high performance and easy portability to various platforms allowing so
to communicate with Eneter even without having the Eneter framework.
Here is the list of limitation when using this protocol formatter:
// Instantiate protocol formatter.
IProtocolFormatter aFormatter = new EasyProtocolFormatter();
// Provide the protocol formatter into the messaging constructor.
// Note: It can be only TCP or WebSocket messaging.
IMessagingSystemFactory aMessaging = new TcpMessagingSystemFactory(aFormatter);
...
// Then use can use the messaging to create channels.
IDuplexOutputChannel anOutputChannel = aMessaging.CreateDuplexOutputChannel("tcp://127.0.0.1:8084/");
...
Constructor Summary | |
---|---|
EasyProtocolFormatter()
Constructs the protocol formatter with default little endian encoding. |
|
EasyProtocolFormatter(boolean isLittleEndian)
Constructs the protocol formatter with specified endianess. |
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)
Returns null. |
void |
encodeCloseConnectionMessage(java.lang.String responseReceiverId,
java.io.OutputStream outputSream)
Does nothing. |
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)
Returns null. |
void |
encodeOpenConnectionMessage(java.lang.String responseReceiverId,
java.io.OutputStream outputSream)
Does nothing. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public EasyProtocolFormatter()
public EasyProtocolFormatter(boolean isLittleEndian)
isLittleEndian
- true - little endian, false - big endian.Method Detail |
---|
public java.lang.Object encodeOpenConnectionMessage(java.lang.String responseReceiverId) throws java.lang.Exception
encodeOpenConnectionMessage
in interface IProtocolFormatter
responseReceiverId
- id of the client opening the connection.
java.lang.Exception
public void encodeOpenConnectionMessage(java.lang.String responseReceiverId, java.io.OutputStream outputSream) throws java.lang.Exception
encodeOpenConnectionMessage
in interface IProtocolFormatter
responseReceiverId
- id of the client opening the connection.outputSream
- output where the encoded open connection message is written
java.lang.Exception
public java.lang.Object encodeCloseConnectionMessage(java.lang.String responseReceiverId) throws java.lang.Exception
encodeCloseConnectionMessage
in interface IProtocolFormatter
responseReceiverId
- id of the client that wants to disconnect or that will be disconnected
java.lang.Exception
public void encodeCloseConnectionMessage(java.lang.String responseReceiverId, java.io.OutputStream outputSream) throws java.lang.Exception
encodeCloseConnectionMessage
in interface IProtocolFormatter
responseReceiverId
- id of the client that wants to disconnect or that will be disconnectedoutputSream
- output where the encoded close connection message is written
java.lang.Exception
public java.lang.Object encodeMessage(java.lang.String responseReceiverId, java.lang.Object message) throws java.lang.Exception
IProtocolFormatter
encodeMessage
in interface IProtocolFormatter
responseReceiverId
- client id.message
- serialized message to be sent.
java.lang.Exception
public void encodeMessage(java.lang.String responseReceiverId, java.lang.Object message, java.io.OutputStream outputSream) throws java.lang.Exception
IProtocolFormatter
encodeMessage
in interface IProtocolFormatter
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
java.lang.Exception
public ProtocolMessage decodeMessage(java.lang.Object readMessage)
IProtocolFormatter
decodeMessage
in interface IProtocolFormatter
readMessage
- reference to the object.
public ProtocolMessage decodeMessage(java.io.InputStream readStream)
IProtocolFormatter
decodeMessage
in interface IProtocolFormatter
readStream
- stream to be read
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |