Class NioDatagramChannel
java.lang.Object
org.jboss.netty.channel.AbstractChannel
org.jboss.netty.channel.socket.nio.NioDatagramChannel
- All Implemented Interfaces:
Comparable<Channel>,Channel,DatagramChannel
Provides an NIO based
DatagramChannel.-
Field Summary
Fields inherited from interface org.jboss.netty.channel.Channel
OP_NONE, OP_READ, OP_READ_WRITE, OP_WRITE -
Method Summary
Modifier and TypeMethodDescriptionblock(InetAddress multicastAddress, InetAddress sourceToBlock) Block the given sourceToBlock address for the given multicastAddressblock(InetAddress multicastAddress, NetworkInterface networkInterface, InetAddress sourceToBlock) Block the given sourceToBlock address for the given multicastAddress on the given networkInterfaceReturns the configuration of this channel.protected intReturns the local address where this channel is bound to.Returns the remote address where this channel is connected to.Return theAbstractNioWorkerthat handle the IO of theAbstractNioChannelbooleanisBound()Returnstrueif and only if this channel is bound to a local address.booleanReturnstrueif and only if this channel is connected to a remote address.joinGroup(InetAddress multicastAddress) Joins a multicast group.joinGroup(InetAddress multicastAddress, NetworkInterface networkInterface, InetAddress source) Joins the specified multicast group at the specified interface using the specified source.joinGroup(InetSocketAddress multicastAddress, NetworkInterface networkInterface) Joins the specified multicast group at the specified interface.leaveGroup(InetAddress multicastAddress) Leaves a multicast group.leaveGroup(InetAddress multicastAddress, NetworkInterface networkInterface, InetAddress source) Leave the specified multicast group at the specified interface using the specified source.leaveGroup(InetSocketAddress multicastAddress, NetworkInterface networkInterface) Leaves a multicast group on a specified local interface.protected booleanMarks this channel as closed.protected voidsetInternalInterestOps(int interestOps) Sets theinterestOpsproperty of this channel immediately.write(Object message, SocketAddress remoteAddress) Sends a message to this channel asynchronously.Methods inherited from class org.jboss.netty.channel.AbstractChannel
bind, close, compareTo, connect, disconnect, equals, getAttachment, getCloseFuture, getFactory, getId, getInterestOps, getParent, getPipeline, getSucceededFuture, getUnsupportedOperationFuture, getUserDefinedWritability, hashCode, isOpen, isReadable, isWritable, setAttachment, setInterestOps, setReadable, setUnwritable, setUserDefinedWritability, setWritable, toString, unbind, writeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.jboss.netty.channel.Channel
bind, close, connect, disconnect, getAttachment, getCloseFuture, getFactory, getId, getInterestOps, getParent, getPipeline, getUserDefinedWritability, isOpen, isReadable, isWritable, setAttachment, setInterestOps, setReadable, setUserDefinedWritability, unbind, writeMethods inherited from interface java.lang.Comparable
compareToMethods inherited from interface org.jboss.netty.channel.socket.DatagramChannel
getLocalAddress, getRemoteAddress
-
Method Details
-
getWorker
Return theAbstractNioWorkerthat handle the IO of theAbstractNioChannel- Returns:
- worker
-
isBound
public boolean isBound()Description copied from interface:ChannelReturnstrueif and only if this channel is bound to a local address. -
isConnected
public boolean isConnected()Description copied from interface:ChannelReturnstrueif and only if this channel is connected to a remote address.- Specified by:
isConnectedin interfaceChannel
-
setClosed
protected boolean setClosed()Description copied from class:AbstractChannelMarks this channel as closed. This method is intended to be called by an internal component - please do not call it unless you know what you are doing.- Returns:
trueif and only if this channel was not marked as closed yet
-
getConfig
Description copied from interface:ChannelReturns the configuration of this channel.- Specified by:
getConfigin interfaceChannel- Specified by:
getConfigin interfaceDatagramChannel
-
joinGroup
Description copied from interface:DatagramChannelJoins a multicast group.- Specified by:
joinGroupin interfaceDatagramChannel
-
joinGroup
public ChannelFuture joinGroup(InetSocketAddress multicastAddress, NetworkInterface networkInterface) Description copied from interface:DatagramChannelJoins the specified multicast group at the specified interface.- Specified by:
joinGroupin interfaceDatagramChannel
-
joinGroup
public ChannelFuture joinGroup(InetAddress multicastAddress, NetworkInterface networkInterface, InetAddress source) Joins the specified multicast group at the specified interface using the specified source. -
leaveGroup
Description copied from interface:DatagramChannelLeaves a multicast group.- Specified by:
leaveGroupin interfaceDatagramChannel
-
leaveGroup
public ChannelFuture leaveGroup(InetSocketAddress multicastAddress, NetworkInterface networkInterface) Description copied from interface:DatagramChannelLeaves a multicast group on a specified local interface.- Specified by:
leaveGroupin interfaceDatagramChannel
-
leaveGroup
public ChannelFuture leaveGroup(InetAddress multicastAddress, NetworkInterface networkInterface, InetAddress source) Leave the specified multicast group at the specified interface using the specified source. -
block
public ChannelFuture block(InetAddress multicastAddress, NetworkInterface networkInterface, InetAddress sourceToBlock) Block the given sourceToBlock address for the given multicastAddress on the given networkInterface -
block
Block the given sourceToBlock address for the given multicastAddress -
write
Description copied from interface:ChannelSends a message to this channel asynchronously. It has an additional parameter that allows a user to specify where to send the specified message instead of this channel's current remote address. If this channel was created by a connectionless transport (e.g.DatagramChannel) and is not connected yet, you must specify non-null address. Otherwise, the write request will fail withNotYetConnectedExceptionand an'exceptionCaught'event will be triggered.- Specified by:
writein interfaceChannel- Overrides:
writein classAbstractChannel- Parameters:
message- the message to writeremoteAddress- where to send the specified message. This method is identical toChannel.write(Object)ifnullis specified here.- Returns:
- the
ChannelFuturewhich will be notified when the write request succeeds or fails
-
getLocalAddress
Description copied from interface:ChannelReturns the local address where this channel is bound to. The returnedSocketAddressis supposed to be down-cast into more concrete type such asInetSocketAddressto retrieve the detailed information.- Returns:
- the local address of this channel.
nullif this channel is not bound.
-
getRemoteAddress
Description copied from interface:ChannelReturns the remote address where this channel is connected to. The returnedSocketAddressis supposed to be down-cast into more concrete type such asInetSocketAddressto retrieve the detailed information.- Returns:
- the remote address of this channel.
nullif this channel is not connected. If this channel is not connected but it can receive messages from arbitrary remote addresses (e.g.DatagramChannel, useMessageEvent.getRemoteAddress()to determine the origination of the received message as this method will returnnull.
-
getInternalInterestOps
protected int getInternalInterestOps()- Overrides:
getInternalInterestOpsin classAbstractChannel
-
setInternalInterestOps
protected void setInternalInterestOps(int interestOps) Description copied from class:AbstractChannelSets theinterestOpsproperty of this channel immediately. This method is intended to be called by an internal component - please do not call it unless you know what you are doing.- Overrides:
setInternalInterestOpsin classAbstractChannel
-