Package org.ldaptive.transport.netty
Class DefaultNettyTransport
- java.lang.Object
-
- org.ldaptive.transport.netty.DefaultNettyTransport
-
- All Implemented Interfaces:
Transport
class DefaultNettyTransport extends Object implements Transport
Creates netty connections using the best fit event loop group based on the operating system. SeeEpoll.isAvailable()andKQueue.isAvailable(). New event loop groups are created for every connection. The event loop groups are shutdown when the connection is closed.
-
-
Field Summary
Fields Modifier and Type Field Description protected LoggerloggerLogger for this class.private intnumIoThreadsNumber of I/O threads.private intnumMessageThreadsNumber of message threads.private StringthreadPoolNameName of the event loop group.
-
Constructor Summary
Constructors Constructor Description DefaultNettyTransport()Creates a new default netty transport.DefaultNettyTransport(int ioThreads)Creates a new default netty transport.DefaultNettyTransport(int ioThreads, int messageThreads)Creates a new default netty transport.DefaultNettyTransport(String name, int ioThreads, int messageThreads)Creates a new default netty transport.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Free any resources associated with this transport.Connectioncreate(ConnectionConfig cc)Create a connection object.protected io.netty.channel.EventLoopGroupcreateEventLoopGroup(String name, int numThreads)Returns a new event loop group with the supplied name and number of threads.protected Class<? extends io.netty.channel.Channel>getSocketChannelType()Returns the socket channel type used with the event loop group.voidshutdown()Force shutdown of this transport.StringtoString()
-
-
-
Field Detail
-
logger
protected final Logger logger
Logger for this class.
-
threadPoolName
private final String threadPoolName
Name of the event loop group.
-
numIoThreads
private final int numIoThreads
Number of I/O threads.
-
numMessageThreads
private final int numMessageThreads
Number of message threads.
-
-
Constructor Detail
-
DefaultNettyTransport
DefaultNettyTransport()
Creates a new default netty transport.
-
DefaultNettyTransport
DefaultNettyTransport(int ioThreads)
Creates a new default netty transport.- Parameters:
ioThreads- number of threads used for I/O in the event loop group
-
DefaultNettyTransport
DefaultNettyTransport(int ioThreads, int messageThreads)Creates a new default netty transport.- Parameters:
ioThreads- number of threads used for I/O in the event loop groupmessageThreads- number of threads for LDAP message handling in the event loop group
-
DefaultNettyTransport
DefaultNettyTransport(String name, int ioThreads, int messageThreads)
Creates a new default netty transport.- Parameters:
name- of the thread poolioThreads- number of threads used for I/O in the event loop groupmessageThreads- number of threads for LDAP message handling in the event loop group
-
-
Method Detail
-
getSocketChannelType
protected Class<? extends io.netty.channel.Channel> getSocketChannelType()
Returns the socket channel type used with the event loop group.- Returns:
- socket channel type
-
createEventLoopGroup
protected io.netty.channel.EventLoopGroup createEventLoopGroup(String name, int numThreads)
Returns a new event loop group with the supplied name and number of threads.- Parameters:
name- of the event loop groupnumThreads- number of worker threads- Returns:
- new event loop group
-
create
public Connection create(ConnectionConfig cc)
Description copied from interface:TransportCreate a connection object. Implementations should not open a TCP socket in this method.
-
close
public void close()
Description copied from interface:TransportFree any resources associated with this transport. This method is invoked by the connection factory using this transport.
-
shutdown
public void shutdown()
Description copied from interface:TransportForce shutdown of this transport. This method is only needed in cases where the connection factory is configured not to close the transport. SeeThreadPoolConfig.setShutdownStrategy(ThreadPoolConfig.ShutdownStrategy).
-
-