From feb5d90ec016c99712f19c5485cf7633cd38f111 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Fri, 23 Mar 2007 14:26:04 +0000
Subject: [PATCH] Merge admin framework from config-prototype-branch onto trunk.
---
opends/src/server/org/opends/server/api/ConnectionHandler.java | 99 ++++++++++++++++++++++++-------------------------
1 files changed, 49 insertions(+), 50 deletions(-)
diff --git a/opends/src/server/org/opends/server/api/ConnectionHandler.java b/opends/src/server/org/opends/server/api/ConnectionHandler.java
index aa08754..dc946ab 100644
--- a/opends/src/server/org/opends/server/api/ConnectionHandler.java
+++ b/opends/src/server/org/opends/server/api/ConnectionHandler.java
@@ -29,7 +29,8 @@
import java.util.Collection;
-import org.opends.server.config.ConfigEntry;
+
+import org.opends.server.admin.std.server.*;
import org.opends.server.config.ConfigException;
import org.opends.server.monitors.ConnectionHandlerMonitor;
import org.opends.server.types.HostPort;
@@ -37,16 +38,17 @@
-
/**
* This class defines the set of methods and structures that must be
* implemented by a Directory Server connection handler.
+ *
+ * @param <T>
+ * The type of connection handler configuration handled by
+ * this connection handler implementation.
*/
public abstract class ConnectionHandler
- extends DirectoryThread
-{
-
-
+ <T extends ConnectionHandlerCfg>
+ extends DirectoryThread {
// The monitor associated with this connection handler.
private ConnectionHandlerMonitor monitor;
@@ -54,15 +56,15 @@
/**
- * Creates a new instance of this connection handler. This must be
+ * Creates a new instance of this connection handler. This must be
* called by all connection handlers, and all connection handlers
* must provide default constructors (i.e., those that do not take
* any arguments) that invoke this constructor.
*
- * @param threadName The name to use for this thread.
+ * @param threadName
+ * The name to use for this thread.
*/
- protected ConnectionHandler(String threadName)
- {
+ protected ConnectionHandler(String threadName) {
super(threadName);
monitor = null;
@@ -71,46 +73,24 @@
/**
- * Initializes this connection handler based on the information in
- * the provided configuration entry.
- *
- * @param configEntry The configuration entry that contains the
- * information to use to initialize this
- * connection handler.
- *
- * @throws ConfigException If there is a problem with the
- * configuration for this connection
- * handler.
- *
- * @throws InitializationException If a problem occurs while
- * attempting to initialize this
- * connection handler.
- */
- public abstract void initializeConnectionHandler(
- ConfigEntry configEntry)
- throws ConfigException, InitializationException;
-
-
-
- /**
* Closes this connection handler so that it will no longer accept
- * new client connections. It may or may not disconnect existing
- * client connections based on the provided flag. Note, however,
+ * new client connections. It may or may not disconnect existing
+ * client connections based on the provided flag. Note, however,
* that some connection handler implementations may not have any way
* to continue processing requests from existing connections, in
* which case they should always be closed regardless of the value
* of the <CODE>closeConnections</CODE> flag.
*
- * @param finalizeReason The reason that this connection handler
- * should be finalized.
- * @param closeConnections Indicates whether any established
- * client connections associated with the
- * connection handler should also be
- * closed.
+ * @param finalizeReason
+ * The reason that this connection handler should be
+ * finalized.
+ * @param closeConnections
+ * Indicates whether any established client connections
+ * associated with the connection handler should also be
+ * closed.
*/
public abstract void finalizeConnectionHandler(
- String finalizeReason,
- boolean closeConnections);
+ String finalizeReason, boolean closeConnections);
@@ -156,14 +136,35 @@
* Retrieves the set of active client connections that have been
* established through this connection handler.
*
- * @return The set of active client connections that have been
- * established through this connection handler.
+ * @return The set of active client connections that have been
+ * established through this connection handler.
*/
public abstract Collection<ClientConnection> getClientConnections();
/**
+ * Initializes this connection handler provider based on the
+ * information in the provided connection handler configuration.
+ *
+ * @param configuration
+ * The connection handler configuration that contains the
+ * information to use to initialize this connection
+ * handler.
+ * @throws ConfigException
+ * If an unrecoverable problem arises in the process of
+ * performing the initialization as a result of the server
+ * configuration.
+ * @throws InitializationException
+ * If a problem occurs during initialization that is not
+ * related to the server configuration.
+ */
+ public abstract void initializeConnectionHandler(T configuration)
+ throws ConfigException, InitializationException;
+
+
+
+ /**
* Operates in a loop, accepting new connections and ensuring that
* requests on those connections are handled properly.
*/
@@ -201,10 +202,9 @@
/**
* Retrieves a string representation of this connection handler.
*
- * @return A string representation of this connection handler.
+ * @return A string representation of this connection handler.
*/
- public String toString()
- {
+ public String toString() {
StringBuilder buffer = new StringBuilder();
toString(buffer);
return buffer.toString();
@@ -216,9 +216,8 @@
* Appends a string representation of this connection handler to the
* provided buffer.
*
- * @param buffer The buffer to which the information should be
- * appended.
+ * @param buffer
+ * The buffer to which the information should be appended.
*/
public abstract void toString(StringBuilder buffer);
}
-
--
Gitblit v1.10.0