public class UdpTransport extends ServiceBase implements Transport
ServiceBase.STARTING, ServiceBase.State, ServiceBase.STOPPING
Modifier and Type | Field and Description |
---|---|
static SocketAddress |
ANY_ADDRESS |
protected DatagramChannel |
channel |
protected ProtocolCodec |
codec |
protected DispatchQueue |
dispatchQueue |
protected CustomDispatchSource<Integer,Integer> |
drainOutboundSource |
static int |
IPTOS_LOWCOST |
static int |
IPTOS_LOWDELAY |
static int |
IPTOS_RELIABILITY |
static int |
IPTOS_THROUGHPUT |
protected TransportListener |
listener |
protected URI |
localLocation |
protected URI |
remoteLocation |
protected org.fusesource.hawtdispatch.transport.UdpTransport.SocketState |
socketState |
protected boolean |
useLocalHost |
protected CustomDispatchSource<Integer,Integer> |
yieldSource |
_serviceState, CREATED, STARTED, STOPPED
Constructor and Description |
---|
UdpTransport() |
Modifier and Type | Method and Description |
---|---|
void |
_start(Task onCompleted) |
void |
_stop(Task onCompleted) |
void |
connected(DatagramChannel channel) |
void |
connecting(URI remoteLocation,
URI localLocation) |
void |
drainInbound() |
void |
flush()
Forces a flush of any output buffers.
|
boolean |
full() |
Executor |
getBlockingExecutor() |
DatagramChannel |
getDatagramChannel() |
DispatchQueue |
getDispatchQueue()
Returns the dispatch queue used by the transport
|
SocketAddress |
getLocalAddress() |
ProtocolCodec |
getProtocolCodec() |
ReadableByteChannel |
getReadChannel() |
int |
getReceiveBufferSize() |
SocketAddress |
getRemoteAddress() |
int |
getSendBufferSize() |
int |
getTrafficClass() |
TransportListener |
getTransportListener()
Returns the current transport listener
|
WritableByteChannel |
getWriteChannel() |
protected void |
initializeChannel() |
protected void |
initializeCodec() |
boolean |
isClosed() |
boolean |
isConnected() |
boolean |
isUseLocalHost() |
boolean |
offer(Object command)
A one way asynchronous send of a command.
|
protected void |
onConnected() |
void |
onTransportFailure(IOException error) |
protected String |
resolveHostName(String host) |
void |
resumeRead()
resume delivery of commands.
|
protected void |
resumeWrite() |
void |
setBlockingExecutor(Executor blockingExecutor) |
void |
setDispatchQueue(DispatchQueue queue)
Sets the dispatch queue used by the transport
|
void |
setProtocolCodec(ProtocolCodec protocolCodec)
Sets the protocol codec for the transport
|
void |
setReceiveBufferSize(int receiveBufferSize) |
void |
setSendBufferSize(int sendBufferSize) |
void |
setTrafficClass(int trafficClass) |
void |
setTransportListener(TransportListener transportListener)
Registers an inbound command listener
|
void |
setUseLocalHost(boolean useLocalHost)
Sets whether 'localhost' or the actual local host name should be used to
make local connections.
|
void |
suspendRead()
suspend delivery of commands.
|
protected void |
suspendWrite() |
protected boolean |
transportFlush() |
getServiceState, start, start, stop, stop
public static final SocketAddress ANY_ADDRESS
protected URI remoteLocation
protected URI localLocation
protected TransportListener listener
protected ProtocolCodec codec
protected DatagramChannel channel
protected org.fusesource.hawtdispatch.transport.UdpTransport.SocketState socketState
protected DispatchQueue dispatchQueue
protected CustomDispatchSource<Integer,Integer> drainOutboundSource
protected CustomDispatchSource<Integer,Integer> yieldSource
protected boolean useLocalHost
public static final int IPTOS_LOWCOST
public static final int IPTOS_RELIABILITY
public static final int IPTOS_THROUGHPUT
public static final int IPTOS_LOWDELAY
public UdpTransport()
public void connected(DatagramChannel channel) throws IOException, Exception
IOException
Exception
protected void initializeChannel() throws Exception
Exception
protected void initializeCodec() throws Exception
Exception
public void connecting(URI remoteLocation, URI localLocation) throws Exception
Exception
public DispatchQueue getDispatchQueue()
Transport
getDispatchQueue
in interface Transport
getDispatchQueue
in class ServiceBase
public void setDispatchQueue(DispatchQueue queue)
Transport
setDispatchQueue
in interface Transport
public void _start(Task onCompleted)
_start
in class ServiceBase
public void _stop(Task onCompleted)
_stop
in class ServiceBase
protected String resolveHostName(String host) throws UnknownHostException
UnknownHostException
protected void onConnected() throws IOException
IOException
public void onTransportFailure(IOException error)
public boolean offer(Object command)
Transport
public void flush()
Transport
protected boolean transportFlush() throws IOException
IOException
public void drainInbound()
drainInbound
in interface Transport
public SocketAddress getLocalAddress()
getLocalAddress
in interface Transport
public SocketAddress getRemoteAddress()
getRemoteAddress
in interface Transport
public void suspendRead()
Transport
suspendRead
in interface Transport
public void resumeRead()
Transport
resumeRead
in interface Transport
protected void suspendWrite()
protected void resumeWrite()
public TransportListener getTransportListener()
Transport
getTransportListener
in interface Transport
public void setTransportListener(TransportListener transportListener)
Transport
setTransportListener
in interface Transport
public ProtocolCodec getProtocolCodec()
getProtocolCodec
in interface Transport
public void setProtocolCodec(ProtocolCodec protocolCodec) throws Exception
Transport
setProtocolCodec
in interface Transport
Exception
public boolean isConnected()
isConnected
in interface Transport
public boolean isClosed()
public boolean isUseLocalHost()
public void setUseLocalHost(boolean useLocalHost)
public DatagramChannel getDatagramChannel()
public ReadableByteChannel getReadChannel()
getReadChannel
in interface Transport
public WritableByteChannel getWriteChannel()
getWriteChannel
in interface Transport
public int getTrafficClass()
public void setTrafficClass(int trafficClass)
public int getReceiveBufferSize()
public void setReceiveBufferSize(int receiveBufferSize)
public int getSendBufferSize()
public void setSendBufferSize(int sendBufferSize)
public Executor getBlockingExecutor()
getBlockingExecutor
in interface Transport
public void setBlockingExecutor(Executor blockingExecutor)
setBlockingExecutor
in interface Transport
Copyright © 2010–2017 FuseSource, Corp.. All rights reserved.