Package | Description |
---|---|
io.netty.channel |
The core channel API which is asynchronous and event-driven abstraction of
various transports such as a
NIO Channel.
|
io.netty.channel.embedded |
A virtual
Channel that helps wrapping a series of handlers to
unit test the handlers or use them in non-I/O context. |
io.netty.channel.epoll |
Optimized transport for linux which uses EPOLL Edge-Triggered Mode
for maximal performance.
|
io.netty.channel.kqueue |
BSD specific transport.
|
io.netty.channel.local |
A virtual transport that enables the communication between the two
parties in the same virtual machine.
|
io.netty.channel.nio |
NIO-based channel
API implementation - recommended for a large number of connections (>= 1000).
|
io.netty.channel.oio |
Old blocking I/O based channel API implementation - recommended for
a small number of connections (< 1000).
|
io.netty.resolver.dns |
An alternative to Java's built-in domain name lookup mechanism that resolves a domain name asynchronously,
which supports the queries of an arbitrary DNS record type as well.
|
Modifier and Type | Class and Description |
---|---|
class |
AbstractEventLoop
Skeletal implementation of
EventLoop . |
class |
DefaultEventLoop |
class |
SingleThreadEventLoop
Abstract base class for
EventLoop s that execute all its submitted tasks in a single thread. |
class |
ThreadPerChannelEventLoop
SingleThreadEventLoop which is used to handle OIO Channel 's. |
Modifier and Type | Method and Description |
---|---|
EventLoop |
Channel.eventLoop()
|
EventLoop |
AbstractChannel.eventLoop() |
protected abstract EventLoop |
MultithreadEventLoopGroup.newChild(Executor executor,
Object... args) |
protected EventLoop |
DefaultEventLoopGroup.newChild(Executor executor,
Object... args) |
protected EventLoop |
ThreadPerChannelEventLoopGroup.newChild(Object... args)
Creates a new
EventLoop . |
EventLoop |
ThreadPerChannelEventLoopGroup.next() |
EventLoop |
SingleThreadEventLoop.next() |
EventLoop |
MultithreadEventLoopGroup.next() |
EventLoop |
EventLoopGroup.next()
Return the next
EventLoop to use |
abstract EventLoop |
AbstractEventLoopGroup.next() |
EventLoop |
AbstractEventLoop.next() |
Modifier and Type | Method and Description |
---|---|
protected abstract boolean |
AbstractChannel.isCompatible(EventLoop loop)
Return
true if the given EventLoop is compatible with this instance. |
void |
Channel.Unsafe.register(EventLoop eventLoop,
ChannelPromise promise)
Register the
Channel of the ChannelPromise and notify
the ChannelFuture once the registration was complete. |
void |
AbstractChannel.AbstractUnsafe.register(EventLoop eventLoop,
ChannelPromise promise) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
EmbeddedChannel.isCompatible(EventLoop loop) |
Modifier and Type | Method and Description |
---|---|
protected EventLoop |
EpollEventLoopGroup.newChild(Executor executor,
Object... args) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
EpollServerSocketChannel.isCompatible(EventLoop loop) |
protected boolean |
AbstractEpollServerChannel.isCompatible(EventLoop loop) |
Modifier and Type | Method and Description |
---|---|
protected EventLoop |
KQueueEventLoopGroup.newChild(Executor executor,
Object... args) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
KQueueServerSocketChannel.isCompatible(EventLoop loop) |
protected boolean |
AbstractKQueueServerChannel.isCompatible(EventLoop loop) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
LocalServerChannel.isCompatible(EventLoop loop) |
protected boolean |
LocalChannel.isCompatible(EventLoop loop) |
Modifier and Type | Class and Description |
---|---|
class |
NioEventLoop
SingleThreadEventLoop implementation which register the Channel 's to a
Selector and so does the multi-plexing of these in the event loop. |
Modifier and Type | Method and Description |
---|---|
protected EventLoop |
NioEventLoopGroup.newChild(Executor executor,
Object... args) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
AbstractNioChannel.isCompatible(EventLoop loop) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
AbstractOioChannel.isCompatible(EventLoop loop) |
Modifier and Type | Method and Description |
---|---|
protected EventLoop |
DnsNameResolver.executor() |
Modifier and Type | Method and Description |
---|---|
void |
NoopDnsCache.cache(String hostname,
DnsRecord[] additional,
InetAddress address,
long originalTtl,
EventLoop loop) |
void |
DnsCache.cache(String hostname,
DnsRecord[] additionals,
InetAddress address,
long originalTtl,
EventLoop loop)
Cache a resolved address for a given hostname.
|
void |
DefaultDnsCache.cache(String hostname,
DnsRecord[] additionals,
InetAddress address,
long originalTtl,
EventLoop loop) |
void |
NoopDnsCache.cache(String hostname,
DnsRecord[] additional,
Throwable cause,
EventLoop loop) |
void |
DnsCache.cache(String hostname,
DnsRecord[] additionals,
Throwable cause,
EventLoop loop)
Cache the resolution failure for a given hostname.
|
void |
DefaultDnsCache.cache(String hostname,
DnsRecord[] additionals,
Throwable cause,
EventLoop loop) |
protected AddressResolver<InetSocketAddress> |
RoundRobinDnsAddressResolverGroup.newAddressResolver(EventLoop eventLoop,
NameResolver<InetAddress> resolver)
We need to override this method, not
DnsAddressResolverGroup.newNameResolver(EventLoop, ChannelFactory, DnsServerAddressStreamProvider) ,
because we need to eliminate possible caching of NameResolver.resolve(java.lang.String)
by InflightNameResolver created in
DnsAddressResolverGroup.newResolver(EventLoop, ChannelFactory, DnsServerAddressStreamProvider) . |
protected AddressResolver<InetSocketAddress> |
DnsAddressResolverGroup.newAddressResolver(EventLoop eventLoop,
NameResolver<InetAddress> resolver)
Creates a new
AddressResolver . |
protected NameResolver<InetAddress> |
DnsAddressResolverGroup.newNameResolver(EventLoop eventLoop,
ChannelFactory<? extends DatagramChannel> channelFactory,
DnsServerAddressStreamProvider nameServerProvider)
Creates a new
NameResolver . |
protected AddressResolver<InetSocketAddress> |
DnsAddressResolverGroup.newResolver(EventLoop eventLoop,
ChannelFactory<? extends DatagramChannel> channelFactory,
DnsServerAddressStreamProvider nameServerProvider)
|
Constructor and Description |
---|
DnsNameResolver(EventLoop eventLoop,
ChannelFactory<? extends DatagramChannel> channelFactory,
DnsCache resolveCache,
DnsCache authoritativeDnsServerCache,
DnsQueryLifecycleObserverFactory dnsQueryLifecycleObserverFactory,
long queryTimeoutMillis,
ResolvedAddressTypes resolvedAddressTypes,
boolean recursionDesired,
int maxQueriesPerResolve,
boolean traceEnabled,
int maxPayloadSize,
boolean optResourceEnabled,
HostsFileEntriesResolver hostsFileEntriesResolver,
DnsServerAddressStreamProvider dnsServerAddressStreamProvider,
String[] searchDomains,
int ndots,
boolean decodeIdn)
Creates a new DNS-based name resolver that communicates with the specified list of DNS servers.
|
DnsNameResolverBuilder(EventLoop eventLoop)
Creates a new builder.
|
Copyright © 2008–2017 The Netty Project. All rights reserved.