org.springframework.integration.ip.udp
Class DatagramPacketMessageMapper

java.lang.Object
  extended by org.springframework.integration.ip.udp.DatagramPacketMessageMapper
All Implemented Interfaces:
InboundMessageMapper<java.net.DatagramPacket>, OutboundMessageMapper<java.net.DatagramPacket>

public class DatagramPacketMessageMapper
extends java.lang.Object
implements InboundMessageMapper<java.net.DatagramPacket>, OutboundMessageMapper<java.net.DatagramPacket>

Message Mapper for converting to and from UDP DatagramPackets. When converting to a Message, the payload will be a byte array containing the data from the received packet. When converting from a Message, the payload may be either a byte array or a String. The default charset for converting a String to a byte array is UTF-8, but that may be changed by invoking the setCharset(String) method. By default, the UDP messages will be unreliable (truncation may occur on the receiving end; packets may be lost). Reliability can be enhanced by one or both of the following techniques:

Since:
2.0

Constructor Summary
DatagramPacketMessageMapper()
           
 
Method Summary
 java.net.DatagramPacket fromMessage(Message<?> message)
          Raw byte[] from message, possibly with a length field up front.
 void setAckAddress(java.lang.String ackAddress)
           
 void setAcknowledge(boolean acknowledge)
           
 void setCharset(java.lang.String charset)
           
 void setLengthCheck(boolean lengthCheck)
           
 Message<byte[]> toMessage(java.net.DatagramPacket packet)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DatagramPacketMessageMapper

public DatagramPacketMessageMapper()
Method Detail

setCharset

public void setCharset(java.lang.String charset)

setAcknowledge

public void setAcknowledge(boolean acknowledge)

setAckAddress

public void setAckAddress(java.lang.String ackAddress)

setLengthCheck

public void setLengthCheck(boolean lengthCheck)

fromMessage

public java.net.DatagramPacket fromMessage(Message<?> message)
                                    throws java.lang.Exception
Raw byte[] from message, possibly with a length field up front.

Specified by:
fromMessage in interface OutboundMessageMapper<java.net.DatagramPacket>
Throws:
java.lang.Exception

toMessage

public Message<byte[]> toMessage(java.net.DatagramPacket packet)
                          throws java.lang.Exception
Specified by:
toMessage in interface InboundMessageMapper<java.net.DatagramPacket>
Throws:
java.lang.Exception