public final class LDAPConnectionHandler extends ConnectionHandler<LDAPConnectionHandlerCfg> implements ConfigurationChangeListener<LDAPConnectionHandlerCfg>, ServerShutdownListener, AlertGenerator
DirectoryThread.Factory
Thread.State, Thread.UncaughtExceptionHandler
DIRECTORY_THREAD_GROUP
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
Constructor and Description |
---|
LDAPConnectionHandler()
Creates a new instance of this LDAP connection handler.
|
LDAPConnectionHandler(QueueingStrategy strategy,
String friendlyName)
Creates a new instance of this LDAP connection handler, using a queueing
strategy.
|
Modifier and Type | Method and Description |
---|---|
boolean |
allowLDAPv2()
Indicates whether this connection handler should allow interaction with
LDAPv2 clients.
|
boolean |
allowStartTLS()
Indicates whether this connection handler should allow the use of the
StartTLS extended operation.
|
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationChange(LDAPConnectionHandlerCfg config)
Applies the configuration changes to this change listener.
|
void |
finalizeConnectionHandler(LocalizableMessage finalizeReason)
Closes this connection handler so that it will no longer accept
new client connections.
|
Map<String,String> |
getAlerts()
Retrieves information about the set of alerts that this generator may
produce.
|
int |
getBufferSize()
Retrieves the size in bytes of the LDAP response message write buffer
defined for this connection handler.
|
String |
getClassName()
Retrieves the fully-qualified name of the Java class for this alert
generator implementation.
|
Collection<ClientConnection> |
getClientConnections()
Retrieves the set of active client connections that have been established
through this connection handler.
|
DN |
getComponentEntryDN()
Retrieves the DN of the configuration entry with which this alert generator
is associated.
|
String |
getConnectionHandlerName()
Retrieves a name that may be used to refer to this connection
handler.
|
Collection<String> |
getEnabledSSLCipherSuites()
Retrieves an unmodifiable set of enabled SSL cipher suites configured for
this connection handler, if applicable.
|
Collection<String> |
getEnabledSSLProtocols()
Retrieves the set of enabled SSL protocols configured for this connection
handler.
|
Collection<HostPort> |
getListeners()
Retrieves information about the listener(s) that will be used to
accept client connections.
|
int |
getListenPort()
Retrieves the port on which this connection handler is listening for client
connections.
|
long |
getMaxBlockedWriteTimeLimit()
Retrieves the maximum length of time in milliseconds that attempts to write
to LDAP client connections should be allowed to block.
|
int |
getMaxRequestSize()
Retrieves the maximum ASN.1 element value length that will be allowed by
this connection handler.
|
String |
getProtocol()
Retrieves the name of the protocol used to communicate with
clients.
|
QueueingStrategy |
getQueueingStrategy()
Get the queueing strategy.
|
String |
getShutdownListenerName()
Retrieves the human-readable name for this shutdown listener.
|
SSLClientAuthPolicy |
getSSLClientAuthPolicy()
Retrieves the SSL client authentication policy for this connection handler.
|
LDAPStatistics |
getStatTracker()
Retrieves the set of statistics maintained by this connection handler.
|
TLSByteChannel |
getTLSByteChannel(ByteChannel channel)
Creates a TLS Byte Channel instance using the specified socket channel.
|
void |
initializeConnectionHandler(ServerContext serverContext,
LDAPConnectionHandlerCfg config)
Initializes this connection handler provider based on the
information in the provided connection handler configuration.
|
boolean |
isConfigurationAcceptable(ConnectionHandlerCfg configuration,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the provided configuration is acceptable for
this connection handler.
|
boolean |
isConfigurationChangeAcceptable(LDAPConnectionHandlerCfg config,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the proposed change to the configuration is
acceptable to this change listener.
|
boolean |
keepStats()
Indicates whether this connection handler should maintain usage statistics.
|
void |
processServerShutdown(LocalizableMessage reason)
Indicates that the Directory Server has received a request to
stop running and that this shutdown listener should take any
action necessary to prepare for it.
|
void |
run()
Operates in a loop, accepting new connections and ensuring that requests on
those connections are handled properly.
|
void |
start() |
void |
toString(StringBuilder buffer)
Appends a string representation of this connection handler to the provided
buffer.
|
boolean |
useSSL()
Indicates whether this connection handler should use SSL to communicate
with clients.
|
getConnectionHandlerMonitor, getNumRequestHandlers, isAdminConnectionHandler, setAdminConnectionHandler, setConnectionHandlerMonitor, toString
getAssociatedTask, getCreationStackTrace, getDebugProperties, getParentThread, initiateShutdown, isShutdownInitiated, setAssociatedTask, startWork, stopWork
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, stop, stop, suspend, yield
public LDAPConnectionHandler()
public LDAPConnectionHandler(QueueingStrategy strategy, String friendlyName)
strategy
- Request handling strategy.friendlyName
- The name of of this connection handler, or null
if the
name should be taken from the configuration.public boolean allowLDAPv2()
true
if LDAPv2 is allowed, or false
if
not.public boolean allowStartTLS()
true
if StartTLS is allowed, or false
if
not.public org.forgerock.opendj.config.server.ConfigChangeResult applyConfigurationChange(LDAPConnectionHandlerCfg config)
applyConfigurationChange
in interface ConfigurationChangeListener<LDAPConnectionHandlerCfg>
config
- The new configuration containing the changes.public void finalizeConnectionHandler(LocalizableMessage finalizeReason)
finalizeConnectionHandler
in class ConnectionHandler<LDAPConnectionHandlerCfg>
finalizeReason
- The reason that this connection handler should be
finalized.public Map<String,String> getAlerts()
getAlerts
in interface AlertGenerator
public String getClassName()
getClassName
in interface AlertGenerator
public Collection<ClientConnection> getClientConnections()
getClientConnections
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public DN getComponentEntryDN()
getComponentEntryDN
in interface AlertGenerator
getComponentEntryDN
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public String getConnectionHandlerName()
getConnectionHandlerName
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public Collection<String> getEnabledSSLCipherSuites()
getEnabledSSLCipherSuites
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public Collection<String> getEnabledSSLProtocols()
getEnabledSSLProtocols
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public Collection<HostPort> getListeners()
getListeners
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public int getListenPort()
public long getMaxBlockedWriteTimeLimit()
public int getMaxRequestSize()
public int getBufferSize()
public String getProtocol()
getProtocol
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public String getShutdownListenerName()
getShutdownListenerName
in interface ServerShutdownListener
public SSLClientAuthPolicy getSSLClientAuthPolicy()
public LDAPStatistics getStatTracker()
public void initializeConnectionHandler(ServerContext serverContext, LDAPConnectionHandlerCfg config) throws org.forgerock.opendj.config.server.ConfigException, InitializationException
initializeConnectionHandler
in class ConnectionHandler<LDAPConnectionHandlerCfg>
serverContext
- The server context.config
- The connection handler configuration that contains the
information to use to initialize this connection
handler.org.forgerock.opendj.config.server.ConfigException
- If an unrecoverable problem arises in the process of
performing the initialization as a result of the server
configuration.InitializationException
- If a problem occurs during initialization that is not
related to the server configuration.public boolean isConfigurationAcceptable(ConnectionHandlerCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationAcceptable
in class ConnectionHandler<LDAPConnectionHandlerCfg>
configuration
- The connection handler configuration
for which to make the determination.unacceptableReasons
- A list that may be used to hold the
reasons that the provided
configuration is not acceptable.true
if the provided configuration is acceptable
for this connection handler, or false
if not.public boolean isConfigurationChangeAcceptable(LDAPConnectionHandlerCfg config, List<LocalizableMessage> unacceptableReasons)
isConfigurationChangeAcceptable
in interface ConfigurationChangeListener<LDAPConnectionHandlerCfg>
config
- The new configuration containing the changes.unacceptableReasons
- A list that can be used to hold messages about why the
provided configuration is not acceptable.true
if the proposed change is
acceptable, or false
if it is not.public boolean keepStats()
true
if this connection handler should maintain usage
statistics, or false
if not.public void processServerShutdown(LocalizableMessage reason)
processServerShutdown
in interface ServerShutdownListener
reason
- The human-readable reason for the shutdown.public void run()
run
in interface Runnable
run
in class ConnectionHandler<LDAPConnectionHandlerCfg>
public void toString(StringBuilder buffer)
toString
in class ConnectionHandler<LDAPConnectionHandlerCfg>
buffer
- The buffer to which the information should be appended.public boolean useSSL()
true
if this connection handler should use SSL to
communicate with clients, or false
if not.public QueueingStrategy getQueueingStrategy()
public TLSByteChannel getTLSByteChannel(ByteChannel channel) throws DirectoryException
channel
- The socket channel to use in the creation.DirectoryException
- If the channel cannot be created.Copyright © 2010-2016 ForgeRock AS. All Rights Reserved.