public class DefaultChannelGroup extends java.util.AbstractSet<Channel> implements ChannelGroup
ChannelGroup
implementation.Constructor and Description |
---|
DefaultChannelGroup(EventExecutor executor)
Creates a new group with a generated name and the provided
EventExecutor to notify the
ChannelGroupFuture s. |
DefaultChannelGroup(EventExecutor executor,
boolean stayClosed)
Creates a new group with a generated name and the provided
EventExecutor to notify the
ChannelGroupFuture s. |
DefaultChannelGroup(java.lang.String name,
EventExecutor executor)
|
DefaultChannelGroup(java.lang.String name,
EventExecutor executor,
boolean stayClosed)
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(Channel channel) |
void |
clear() |
ChannelGroupFuture |
close()
Closes all
Channel s in this group. |
ChannelGroupFuture |
close(ChannelMatcher matcher)
Closes all
Channel s in this group that match the given ChannelMatcher . |
int |
compareTo(ChannelGroup o) |
boolean |
contains(java.lang.Object o) |
ChannelGroupFuture |
deregister() |
ChannelGroupFuture |
deregister(ChannelMatcher matcher) |
ChannelGroupFuture |
disconnect()
Disconnects all
Channel s in this group from their remote peers. |
ChannelGroupFuture |
disconnect(ChannelMatcher matcher)
Disconnects all
Channel s in this group from their remote peers,
that match the given ChannelMatcher . |
boolean |
equals(java.lang.Object o) |
ChannelGroup |
flush()
Flush all
Channel s in this
group. |
ChannelGroup |
flush(ChannelMatcher matcher)
Flush all
Channel s in this group that match the given ChannelMatcher . |
ChannelGroupFuture |
flushAndWrite(java.lang.Object message) |
ChannelGroupFuture |
flushAndWrite(java.lang.Object message,
ChannelMatcher matcher) |
int |
hashCode() |
boolean |
isEmpty() |
java.util.Iterator<Channel> |
iterator() |
java.lang.String |
name()
Returns the name of this group.
|
ChannelGroupFuture |
newCloseFuture()
Returns the
ChannelGroupFuture which will be notified when all Channel s that are part of this
ChannelGroup , at the time of calling, are closed. |
ChannelGroupFuture |
newCloseFuture(ChannelMatcher matcher)
Returns the
ChannelGroupFuture which will be notified when all Channel s that are part of this
ChannelGroup , at the time of calling, are closed. |
boolean |
remove(java.lang.Object o) |
int |
size() |
java.lang.Object[] |
toArray() |
<T> T[] |
toArray(T[] a) |
java.lang.String |
toString() |
ChannelGroupFuture |
write(java.lang.Object message)
Writes the specified
message to all Channel s in this
group. |
ChannelGroupFuture |
write(java.lang.Object message,
ChannelMatcher matcher)
|
ChannelGroupFuture |
writeAndFlush(java.lang.Object message)
Shortcut for calling
ChannelGroup.write(Object) and ChannelGroup.flush() . |
ChannelGroupFuture |
writeAndFlush(java.lang.Object message,
ChannelMatcher matcher)
Shortcut for calling
ChannelGroup.write(Object) and ChannelGroup.flush() and only act on
Channel s that match the ChannelMatcher . |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
public DefaultChannelGroup(EventExecutor executor)
EventExecutor
to notify the
ChannelGroupFuture
s.public DefaultChannelGroup(java.lang.String name, EventExecutor executor)
name
and EventExecutor
to notify the
ChannelGroupFuture
s. Please note that different groups can have the same name, which means no
duplicate check is done against group names.public DefaultChannelGroup(EventExecutor executor, boolean stayClosed)
EventExecutor
to notify the
ChannelGroupFuture
s. stayClosed
defines whether or not, this group can be closed
more than once. Adding channels to a closed group will immediately close them, too. This makes it
easy, to shutdown server and child channels at once.public DefaultChannelGroup(java.lang.String name, EventExecutor executor, boolean stayClosed)
name
and EventExecutor
to notify the
ChannelGroupFuture
s. stayClosed
defines whether or not, this group can be closed
more than once. Adding channels to a closed group will immediately close them, too. This makes it
easy, to shutdown server and child channels at once. Please note that different groups can have
the same name, which means no duplicate check is done against group names.public java.lang.String name()
ChannelGroup
name
in interface ChannelGroup
public boolean isEmpty()
public int size()
public boolean contains(java.lang.Object o)
public boolean add(Channel channel)
public boolean remove(java.lang.Object o)
public void clear()
public java.util.Iterator<Channel> iterator()
public java.lang.Object[] toArray()
public <T> T[] toArray(T[] a)
public ChannelGroupFuture close()
ChannelGroup
Channel
s in this group. If the Channel
is
connected to a remote peer or bound to a local address, it is
automatically disconnected and unbound.close
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture disconnect()
ChannelGroup
Channel
s in this group from their remote peers.disconnect
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture deregister()
deregister
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture write(java.lang.Object message)
ChannelGroup
message
to all Channel
s in this
group. If the specified message
is an instance of
ByteBuf
, it is automatically
duplicated to avoid a race
condition. The same is true for ByteBufHolder
. Please note that this operation is asynchronous as
Channel.write(Object)
is.write
in interface ChannelGroup
public ChannelGroupFuture write(java.lang.Object message, ChannelMatcher matcher)
ChannelGroup
message
to all Channel
s in this
group that match the given ChannelMatcher
. If the specified message
is an instance of
ByteBuf
, it is automatically
duplicated to avoid a race
condition. The same is true for ByteBufHolder
. Please note that this operation is asynchronous as
Channel.write(Object)
is.write
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroup flush()
ChannelGroup
Channel
s in this
group. If the specified messages
are an instance of
ByteBuf
, it is automatically
duplicated to avoid a race
condition. Please note that this operation is asynchronous as
Channel.write(Object)
is.flush
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture flushAndWrite(java.lang.Object message)
flushAndWrite
in interface ChannelGroup
public ChannelGroupFuture writeAndFlush(java.lang.Object message)
ChannelGroup
ChannelGroup.write(Object)
and ChannelGroup.flush()
.writeAndFlush
in interface ChannelGroup
public ChannelGroupFuture disconnect(ChannelMatcher matcher)
ChannelGroup
Channel
s in this group from their remote peers,
that match the given ChannelMatcher
.disconnect
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture close(ChannelMatcher matcher)
ChannelGroup
Channel
s in this group that match the given ChannelMatcher
.
If the Channel
is connected to a remote peer or bound to a local address, it is
automatically disconnected and unbound.close
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture deregister(ChannelMatcher matcher)
deregister
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroup flush(ChannelMatcher matcher)
ChannelGroup
Channel
s in this group that match the given ChannelMatcher
.
If the specified messages
are an instance of
ByteBuf
, it is automatically
duplicated to avoid a race
condition. Please note that this operation is asynchronous as
Channel.write(Object)
is.flush
in interface ChannelGroup
ChannelGroupFuture
instance that notifies when
the operation is done for all channelspublic ChannelGroupFuture flushAndWrite(java.lang.Object message, ChannelMatcher matcher)
flushAndWrite
in interface ChannelGroup
public ChannelGroupFuture writeAndFlush(java.lang.Object message, ChannelMatcher matcher)
ChannelGroup
ChannelGroup.write(Object)
and ChannelGroup.flush()
and only act on
Channel
s that match the ChannelMatcher
.writeAndFlush
in interface ChannelGroup
public ChannelGroupFuture newCloseFuture()
ChannelGroupFuture
which will be notified when all Channel
s that are part of this
ChannelGroup
, at the time of calling, are closed.public ChannelGroupFuture newCloseFuture(ChannelMatcher matcher)
ChannelGroupFuture
which will be notified when all Channel
s that are part of this
ChannelGroup
, at the time of calling, are closed.public int hashCode()
public boolean equals(java.lang.Object o)
public int compareTo(ChannelGroup o)
compareTo
in interface java.lang.Comparable<ChannelGroup>
public java.lang.String toString()
toString
in class java.util.AbstractCollection<Channel>
Copyright © 2008–2018 The Netty Project. All rights reserved.