Package com.tangosol.net
Class NonBlockingTcpDatagramSocket.Impl
java.lang.Object
java.net.DatagramSocketImpl
com.tangosol.net.TcpDatagramSocket.Impl
com.tangosol.net.NonBlockingTcpDatagramSocket.Impl
- All Implemented Interfaces:
SocketOptions
- Enclosing class:
NonBlockingTcpDatagramSocket
A specialization of
TcpDatagramSocket.Impl
which provides
non-blocking functionality, see send(DatagramPacket)
.-
Field Summary
Fields inherited from class com.tangosol.net.TcpDatagramSocket.Impl
HEADER_SIZE, PROTOCOL_MAGIC
Fields inherited from class java.net.DatagramSocketImpl
fd, localPort
Fields inherited from interface java.net.SocketOptions
IP_MULTICAST_IF, IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS, SO_BINDADDR, SO_BROADCAST, SO_KEEPALIVE, SO_LINGER, SO_OOBINLINE, SO_RCVBUF, SO_REUSEADDR, SO_REUSEPORT, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected com.tangosol.net.TcpDatagramSocket.Impl.Connection
makeConnection
(SocketAddress addr) Produce a new Connection for the specified destination address.protected com.tangosol.net.TcpDatagramSocket.Impl.Connection
makeConnection
(SocketChannel chan) Make a connection from an existing channel.protected boolean
onConnectionHeader
(com.tangosol.net.TcpDatagramSocket.Impl.ConnectionStatus status, SocketChannel chan) Process a pending connection header.protected void
send
(DatagramPacket packet) Methods inherited from class com.tangosol.net.TcpDatagramSocket.Impl
bind, bind, close, closeInbound, closeOutbound, create, ensureConnection, ensureSocketException, getLocalPort, getOption, getTimeToLive, getTTL, join, joinGroup, leave, leaveGroup, logException, logProtocolWarning, nextKey, onAccept, onRead, peek, peekData, processRegistrations, provider, receive, scheduleRegistration, setOption, setPacketMagic, setTimeToLive, setTTL, toString, transferBytes
Methods inherited from class java.net.DatagramSocketImpl
connect, disconnect, getFileDescriptor, getOption, setOption, supportedOptions
-
Constructor Details
-
Impl
Creates a new Impl.- Throws:
SocketException
- if any error happens during the bind, or if the port is unavailable
-
Impl
Creates a new Impl using aprovider
.- Parameters:
provider
- theprovider
used to create internal sockets- Throws:
SocketException
- if any error happens during the bind, or if the port is unavailable
-
-
Method Details
-
onConnectionHeader
protected boolean onConnectionHeader(com.tangosol.net.TcpDatagramSocket.Impl.ConnectionStatus status, SocketChannel chan) throws IOException Process a pending connection header.- Overrides:
onConnectionHeader
in classTcpDatagramSocket.Impl
- Parameters:
status
- the associated ConnectionStatuschan
- the associated channel- Returns:
- true if EOS has been reached
- Throws:
IOException
- if an I/O error occurs
-
makeConnection
protected com.tangosol.net.TcpDatagramSocket.Impl.Connection makeConnection(SocketChannel chan) throws IOException Make a connection from an existing channel.- Parameters:
chan
- the channel- Returns:
- the connection
- Throws:
IOException
- if an I/O error occurs
-
makeConnection
protected com.tangosol.net.TcpDatagramSocket.Impl.Connection makeConnection(SocketAddress addr) throws IOException Produce a new Connection for the specified destination address.- Overrides:
makeConnection
in classTcpDatagramSocket.Impl
- Parameters:
addr
- the destination address- Returns:
- the corresponding connection
- Throws:
IOException
- if an I/O error occurs
-
send
- Overrides:
send
in classTcpDatagramSocket.Impl
- Throws:
IOException
-