mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

matthew_swift
17.34.2009 9018efaed01fdedb49f01b171bb0346e3d9fc0c9
Fix "Cannot reference a field before it is defined" compilation errors that are flagged in recent versions of Eclipse.
3 files modified
852 ■■■■ changed files
opends/src/server/org/opends/server/api/plugin/PluginType.java 681 ●●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/controls/PasswordPolicyErrorType.java 122 ●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/controls/PasswordPolicyWarningType.java 49 ●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/api/plugin/PluginType.java
@@ -22,14 +22,13 @@
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2008 Sun Microsystems, Inc.
 *      Copyright 2006-2009 Sun Microsystems, Inc.
 */
package org.opends.server.api.plugin;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
@@ -50,7 +49,7 @@
   * The plugin type for plugins that are invoked when the Directory
   * Server is starting up.
   */
  STARTUP(PluginType.NAME_STARTUP),
  STARTUP("startup"),
@@ -58,7 +57,7 @@
   * The plugin type for plugins that are invoked when the Directory
   * Server is performing a graceful shutdown.
   */
  SHUTDOWN(PluginType.NAME_SHUTDOWN),
  SHUTDOWN("shutdown"),
@@ -66,7 +65,7 @@
   * The plugin type for plugins that are to be invoked whenever a new
   * client connection is established.
   */
  POST_CONNECT(PluginType.NAME_POST_CONNECT),
  POST_CONNECT("postconnect"),
@@ -74,7 +73,7 @@
   * The plugin type for plugins that are to be invoked whenever a
   * client connection is closed.
   */
  POST_DISCONNECT(PluginType.NAME_POST_DISCONNECT),
  POST_DISCONNECT("postdisconnect"),
@@ -82,7 +81,7 @@
   * The plugin type for plugins that are to be invoked for each entry
   * read during an LDIF import.
   */
  LDIF_IMPORT(PluginType.NAME_LDIF_IMPORT),
  LDIF_IMPORT("ldifimport"),
@@ -90,7 +89,7 @@
   * The plugin type for plugins that are to be invoked for each entry
   * written during an LDIF export.
   */
  LDIF_EXPORT(PluginType.NAME_LDIF_EXPORT),
  LDIF_EXPORT("ldifexport"),
@@ -98,7 +97,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on an abandon operation.
   */
  PRE_PARSE_ABANDON(PluginType.NAME_PRE_PARSE_ABANDON),
  PRE_PARSE_ABANDON("preparseabandon"),
@@ -106,7 +105,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on an add operation.
   */
  PRE_PARSE_ADD(PluginType.NAME_PRE_PARSE_ADD),
  PRE_PARSE_ADD("preparseadd"),
@@ -114,7 +113,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on a bind operation.
   */
  PRE_PARSE_BIND(PluginType.NAME_PRE_PARSE_BIND),
  PRE_PARSE_BIND("preparsebind"),
@@ -122,7 +121,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on a compare operation.
   */
  PRE_PARSE_COMPARE(PluginType.NAME_PRE_PARSE_COMPARE),
  PRE_PARSE_COMPARE("preparsecompare"),
@@ -130,7 +129,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on a delete operation.
   */
  PRE_PARSE_DELETE(PluginType.NAME_PRE_PARSE_DELETE),
  PRE_PARSE_DELETE("preparsedelete"),
@@ -138,7 +137,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on an extended operation.
   */
  PRE_PARSE_EXTENDED(PluginType.NAME_PRE_PARSE_EXTENDED),
  PRE_PARSE_EXTENDED("preparseextended"),
@@ -146,7 +145,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on a modify operation.
   */
  PRE_PARSE_MODIFY(PluginType.NAME_PRE_PARSE_MODIFY),
  PRE_PARSE_MODIFY("preparsemodify"),
@@ -154,7 +153,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on a modify DN operation.
   */
  PRE_PARSE_MODIFY_DN(PluginType.NAME_PRE_PARSE_MODIFY_DN),
  PRE_PARSE_MODIFY_DN("preparsemodifydn"),
@@ -162,7 +161,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on a search operation.
   */
  PRE_PARSE_SEARCH(PluginType.NAME_PRE_PARSE_SEARCH),
  PRE_PARSE_SEARCH("preparsesearch"),
@@ -170,7 +169,7 @@
   * The plugin type for plugins that are to be invoked before
   * processing begins on an unbind operation.
   */
  PRE_PARSE_UNBIND(PluginType.NAME_PRE_PARSE_UNBIND),
  PRE_PARSE_UNBIND("preparseunbind"),
@@ -178,7 +177,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for an add operation.
   */
  PRE_OPERATION_ADD(PluginType.NAME_PRE_OPERATION_ADD),
  PRE_OPERATION_ADD("preoperationadd"),
@@ -186,7 +185,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for a bind operation.
   */
  PRE_OPERATION_BIND(PluginType.NAME_PRE_OPERATION_BIND),
  PRE_OPERATION_BIND("preoperationbind"),
@@ -194,7 +193,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for a compare operation.
   */
  PRE_OPERATION_COMPARE(PluginType.NAME_PRE_OPERATION_COMPARE),
  PRE_OPERATION_COMPARE("preoperationcompare"),
@@ -202,7 +201,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for a delete operation.
   */
  PRE_OPERATION_DELETE(PluginType.NAME_PRE_OPERATION_DELETE),
  PRE_OPERATION_DELETE("preoperationdelete"),
@@ -210,7 +209,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for an extended operation.
   */
  PRE_OPERATION_EXTENDED(PluginType.NAME_PRE_OPERATION_EXTENDED),
  PRE_OPERATION_EXTENDED("preoperationextended"),
@@ -218,7 +217,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for a modify operation.
   */
  PRE_OPERATION_MODIFY(PluginType.NAME_PRE_OPERATION_MODIFY),
  PRE_OPERATION_MODIFY("preoperationmodify"),
@@ -226,7 +225,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for a modify DN operation.
   */
  PRE_OPERATION_MODIFY_DN(PluginType.NAME_PRE_OPERATION_MODIFY_DN),
  PRE_OPERATION_MODIFY_DN("preoperationmodifydn"),
@@ -234,7 +233,7 @@
   * The plugin type for plugins that are to be invoked just before
   * the core processing for a search operation.
   */
  PRE_OPERATION_SEARCH(PluginType.NAME_PRE_OPERATION_SEARCH),
  PRE_OPERATION_SEARCH("preoperationsearch"),
@@ -242,7 +241,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for an abandon operation.
   */
  POST_OPERATION_ABANDON(PluginType.NAME_POST_OPERATION_ABANDON),
  POST_OPERATION_ABANDON("postoperationabandon"),
@@ -250,7 +249,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for an add operation.
   */
  POST_OPERATION_ADD(PluginType.NAME_POST_OPERATION_ADD),
  POST_OPERATION_ADD("postoperationadd"),
@@ -258,7 +257,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for a bind operation.
   */
  POST_OPERATION_BIND(PluginType.NAME_POST_OPERATION_BIND),
  POST_OPERATION_BIND("postoperationbind"),
@@ -266,7 +265,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for a compare operation.
   */
  POST_OPERATION_COMPARE(PluginType.NAME_POST_OPERATION_COMPARE),
  POST_OPERATION_COMPARE("postoperationcompare"),
@@ -274,7 +273,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for a delete operation.
   */
  POST_OPERATION_DELETE(PluginType.NAME_POST_OPERATION_DELETE),
  POST_OPERATION_DELETE("postoperationdelete"),
@@ -282,7 +281,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for an extended operation.
   */
  POST_OPERATION_EXTENDED(PluginType.NAME_POST_OPERATION_EXTENDED),
  POST_OPERATION_EXTENDED("postoperationextended"),
@@ -290,7 +289,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for a modify operation.
   */
  POST_OPERATION_MODIFY(PluginType.NAME_POST_OPERATION_MODIFY),
  POST_OPERATION_MODIFY("postoperationmodify"),
@@ -298,7 +297,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for a modify DN operation.
   */
  POST_OPERATION_MODIFY_DN(PluginType.NAME_POST_OPERATION_MODIFY_DN),
  POST_OPERATION_MODIFY_DN("postoperationmodifydn"),
@@ -306,7 +305,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for a search operation.
   */
  POST_OPERATION_SEARCH(PluginType.NAME_POST_OPERATION_SEARCH),
  POST_OPERATION_SEARCH("postoperationsearch"),
@@ -314,7 +313,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * core processing for an unbind operation.
   */
  POST_OPERATION_UNBIND(PluginType.NAME_POST_OPERATION_UNBIND),
  POST_OPERATION_UNBIND("postoperationunbind"),
@@ -322,7 +321,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for an add operation.
   */
  POST_RESPONSE_ADD(PluginType.NAME_POST_RESPONSE_ADD),
  POST_RESPONSE_ADD("postresponseadd"),
@@ -330,7 +329,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for a bind operation.
   */
  POST_RESPONSE_BIND(PluginType.NAME_POST_RESPONSE_BIND),
  POST_RESPONSE_BIND("postresponsebind"),
@@ -338,7 +337,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for a compare operation.
   */
  POST_RESPONSE_COMPARE(PluginType.NAME_POST_RESPONSE_COMPARE),
  POST_RESPONSE_COMPARE("postresponsecompare"),
@@ -346,7 +345,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for a delete operation.
   */
  POST_RESPONSE_DELETE(PluginType.NAME_POST_RESPONSE_DELETE),
  POST_RESPONSE_DELETE("postresponsedelete"),
@@ -354,7 +353,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for an extended operation.
   */
  POST_RESPONSE_EXTENDED(PluginType.NAME_POST_RESPONSE_EXTENDED),
  POST_RESPONSE_EXTENDED("postresponseextended"),
@@ -362,7 +361,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for a modify operation.
   */
  POST_RESPONSE_MODIFY(PluginType.NAME_POST_RESPONSE_MODIFY),
  POST_RESPONSE_MODIFY("postresponsemodify"),
@@ -370,7 +369,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for a modify DN operation.
   */
  POST_RESPONSE_MODIFY_DN(PluginType.NAME_POST_RESPONSE_MODIFY_DN),
  POST_RESPONSE_MODIFY_DN("postresponsemodifydn"),
@@ -378,7 +377,7 @@
   * The plugin type for plugins that are to be invoked just after the
   * response is sent for a search operation.
   */
  POST_RESPONSE_SEARCH(PluginType.NAME_POST_RESPONSE_SEARCH),
  POST_RESPONSE_SEARCH("postresponsesearch"),
@@ -386,7 +385,7 @@
   * The plugin type for plugins that are to be invoked just after an
   * add operation has been completed via synchronization.
   */
  POST_SYNCHRONIZATION_ADD(PluginType.NAME_POST_SYNCHRONIZATION_ADD),
  POST_SYNCHRONIZATION_ADD("postsynchronizationadd"),
@@ -395,7 +394,7 @@
   * delete operation has been completed via synchronization.
   */
  POST_SYNCHRONIZATION_DELETE(
       PluginType.NAME_POST_SYNCHRONIZATION_DELETE),
       "postsynchronizationdelete"),
@@ -404,7 +403,7 @@
   * modify operation has been completed via synchronization.
   */
  POST_SYNCHRONIZATION_MODIFY(
       PluginType.NAME_POST_SYNCHRONIZATION_MODIFY),
       "postsynchronizationmodify"),
@@ -413,7 +412,7 @@
   * modify DN operation has been completed via synchronization.
   */
  POST_SYNCHRONIZATION_MODIFY_DN(
       PluginType.NAME_POST_SYNCHRONIZATION_MODIFY_DN),
       "postsynchronizationmodifydn"),
@@ -421,7 +420,7 @@
   * The plugin type for plugins that are to be invoked before each
   * search result entry is sent to a client.
   */
  SEARCH_RESULT_ENTRY(PluginType.NAME_SEARCH_ENTRY),
  SEARCH_RESULT_ENTRY("searchresultentry"),
@@ -429,7 +428,7 @@
   * The plugin type for plugins that are to be invoked before each
   * search result reference is sent to a client.
   */
  SEARCH_RESULT_REFERENCE(PluginType.NAME_SEARCH_REFERENCE),
  SEARCH_RESULT_REFERENCE("searchresultreference"),
@@ -438,7 +437,7 @@
   * subordinate entry that is moved or renamed as part of a modify DN
   * operation.
   */
  SUBORDINATE_MODIFY_DN(PluginType.NAME_SUBORDINATE_MODIFY_DN),
  SUBORDINATE_MODIFY_DN("subordinatemodifydn"),
@@ -446,578 +445,21 @@
   * The plugin type for plugins that are to be invoked before each
   * intermediate response message is sent to a client.
   */
  INTERMEDIATE_RESPONSE(PluginType.NAME_INTERMEDIATE_RESPONSE);
  INTERMEDIATE_RESPONSE("intermediateresponse");
  /**
   * The name that will be used for startup plugins.
   */
  private static final String NAME_STARTUP = "startup";
  /**
   * The name that will be used for shutdown plugins.
   */
  private static final String NAME_SHUTDOWN = "shutdown";
  /**
   * The name that will be used for post-connect plugins.
   */
  private static final String NAME_POST_CONNECT = "postconnect";
  /**
   * The name that will be used for post-disconnect plugins.
   */
  private static final String NAME_POST_DISCONNECT = "postdisconnect";
  /**
   * The name that will be used for LDIF import plugins.
   */
  private static final String NAME_LDIF_IMPORT = "ldifimport";
  /**
   * The name that will be used for LDIF export plugins.
   */
  private static final String NAME_LDIF_EXPORT = "ldifexport";
  /**
   * The name that will be used for pre-parse abandon plugins.
   */
  private static final String NAME_PRE_PARSE_ABANDON =
       "preparseabandon";
  /**
   * The name that will be used for pre-parse add plugins.
   */
  private static final String NAME_PRE_PARSE_ADD = "preparseadd";
  /**
   * The name that will be used for pre-parse bind plugins.
   */
  private static final String NAME_PRE_PARSE_BIND = "preparsebind";
  /**
   * The name that will be used for pre-parse compare plugins.
   */
  private static final String NAME_PRE_PARSE_COMPARE =
       "preparsecompare";
  /**
   * The name that will be used for pre-parse delete plugins.
   */
  private static final String NAME_PRE_PARSE_DELETE =
       "preparsedelete";
  /**
   * The name that will be used for pre-parse extended plugins.
   */
  private static final String NAME_PRE_PARSE_EXTENDED =
       "preparseextended";
  /**
   * The name that will be used for pre-parse modify plugins.
   */
  private static final String NAME_PRE_PARSE_MODIFY =
       "preparsemodify";
  /**
   * The name that will be used for pre-parse modify DN plugins.
   */
  private static final String NAME_PRE_PARSE_MODIFY_DN =
       "preparsemodifydn";
  /**
   * The name that will be used for pre-parse search plugins.
   */
  private static final String NAME_PRE_PARSE_SEARCH =
       "preparsesearch";
  /**
   * The name that will be used for pre-parse unbind plugins.
   */
  private static final String NAME_PRE_PARSE_UNBIND =
       "preparseunbind";
  /**
   * The name that will be used for pre-operation add plugins.
   */
  private static final String NAME_PRE_OPERATION_ADD =
       "preoperationadd";
  /**
   * The name that will be used for pre-operation bind plugins.
   */
  private static final String NAME_PRE_OPERATION_BIND =
       "preoperationbind";
  /**
   * The name that will be used for pre-operation compare plugins.
   */
  private static final String NAME_PRE_OPERATION_COMPARE =
       "preoperationcompare";
  /**
   * The name that will be used for pre-operation delete plugins.
   */
  private static final String NAME_PRE_OPERATION_DELETE =
       "preoperationdelete";
  /**
   * The name that will be used for pre-operation extended plugins.
   */
  private static final String NAME_PRE_OPERATION_EXTENDED =
       "preoperationextended";
  /**
   * The name that will be used for pre-operation modify plugins.
   */
  private static final String NAME_PRE_OPERATION_MODIFY =
       "preoperationmodify";
  /**
   * The name that will be used for pre-operation modify DN plugins.
   */
  private static final String NAME_PRE_OPERATION_MODIFY_DN =
       "preoperationmodifydn";
  /**
   * The name that will be used for pre-operation search plugins.
   */
  private static final String NAME_PRE_OPERATION_SEARCH =
       "preoperationsearch";
  /**
   * The name that will be used for post-operation abandon plugins.
   */
  private static final String NAME_POST_OPERATION_ABANDON =
       "postoperationabandon";
  /**
   * The name that will be used for post-operation add plugins.
   */
  private static final String NAME_POST_OPERATION_ADD =
       "postoperationadd";
  /**
   * The name that will be used for post-operation bind plugins.
   */
  private static final String NAME_POST_OPERATION_BIND =
       "postoperationbind";
  /**
   * The name that will be used for post-operation compare plugins.
   */
  private static final String NAME_POST_OPERATION_COMPARE =
       "postoperationcompare";
  /**
   * The name that will be used for post-operation delete plugins.
   */
  private static final String NAME_POST_OPERATION_DELETE =
       "postoperationdelete";
  /**
   * The name that will be used for post-operation extended plugins.
   */
  private static final String NAME_POST_OPERATION_EXTENDED =
       "postoperationextended";
  /**
   * The name that will be used for post-operation modify plugins.
   */
  private static final String NAME_POST_OPERATION_MODIFY =
       "postoperationmodify";
  /**
   * The name that will be used for post-operation modify DN plugins.
   */
  private static final String NAME_POST_OPERATION_MODIFY_DN =
       "postoperationmodifydn";
  /**
   * The name that will be used for post-operation search plugins.
   */
  private static final String NAME_POST_OPERATION_SEARCH =
       "postoperationsearch";
  /**
   * The name that will be used for post-operation unbind plugins.
   */
  private static final String NAME_POST_OPERATION_UNBIND =
       "postoperationunbind";
  /**
   * The name that will be used for post-response add plugins.
   */
  private static final String NAME_POST_RESPONSE_ADD =
       "postresponseadd";
  /**
   * The name that will be used for post-response bind plugins.
   */
  private static final String NAME_POST_RESPONSE_BIND =
       "postresponsebind";
  /**
   * The name that will be used for post-response compare plugins.
   */
  private static final String NAME_POST_RESPONSE_COMPARE =
       "postresponsecompare";
  /**
   * The name that will be used for post-response delete plugins.
   */
  private static final String NAME_POST_RESPONSE_DELETE =
       "postresponsedelete";
  /**
   * The name that will be used for post-response extended plugins.
   */
  private static final String NAME_POST_RESPONSE_EXTENDED =
       "postresponseextended";
  /**
   * The name that will be used for post-response modify plugins.
   */
  private static final String NAME_POST_RESPONSE_MODIFY =
       "postresponsemodify";
  /**
   * The name that will be used for post-response modify DN plugins.
   */
  private static final String NAME_POST_RESPONSE_MODIFY_DN =
       "postresponsemodifydn";
  /**
   * The name that will be used for post-response search plugins.
   */
  private static final String NAME_POST_RESPONSE_SEARCH =
       "postresponsesearch";
  /**
   * The name that will be used for post-synchronization add plugins.
   */
  private static final String NAME_POST_SYNCHRONIZATION_ADD =
       "postsynchronizationadd";
  /**
   * The name that will be used for post-synchronization delete
   * plugins.
   */
  private static final String NAME_POST_SYNCHRONIZATION_DELETE =
       "postsynchronizationdelete";
  /**
   * The name that will be used for post-synchronization modify
   * plugins.
   */
  private static final String NAME_POST_SYNCHRONIZATION_MODIFY =
       "postsynchronizationmodify";
  /**
   * The name that will be used for post-synchronization modify DN
   * plugins.
   */
  private static final String NAME_POST_SYNCHRONIZATION_MODIFY_DN =
       "postsynchronizationmodifydn";
  /**
   * The name that will be used for search result entry plugins.
   */
  private static final String NAME_SEARCH_ENTRY = "searchresultentry";
  /**
   * The name that will be used for search result reference plugins.
   */
  private static final String NAME_SEARCH_REFERENCE =
      "searchresultreference";
  /**
   * The name that will be used for subordinate modify DN plugins.
   */
  private static final String NAME_SUBORDINATE_MODIFY_DN =
       "subordinatemodifydn";
  /**
   * The name that will be used for intermediate response plugins.
   */
  private static final String NAME_INTERMEDIATE_RESPONSE =
       "intermediateresponse";
  /**
   * A hash set containing the names of all the available plugin
   * types.
   */
  private static final Set<String> PLUGIN_TYPE_NAMES =
       new HashSet<String>(50);
  /**
   * A hash map that relates the plugin type names to the
   * corresponding plugin type.
   */
  private static final Map<String,PluginType> PLUGIN_TYPE_MAP =
       new HashMap<String,PluginType>(50);
  // A hash map that relates the plugin type names to the
  // corresponding plugin type.
  private static final Map<String, PluginType> PLUGIN_TYPE_MAP;
  static
  {
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_STARTUP);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_SHUTDOWN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_CONNECT);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_DISCONNECT);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_LDIF_IMPORT);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_LDIF_EXPORT);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_ABANDON);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_ADD);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_BIND);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_COMPARE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_DELETE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_EXTENDED);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_MODIFY);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_MODIFY_DN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_SEARCH);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_PARSE_UNBIND);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_ADD);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_BIND);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_COMPARE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_DELETE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_EXTENDED);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_MODIFY);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_MODIFY_DN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_PRE_OPERATION_SEARCH);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_ABANDON);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_ADD);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_BIND);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_COMPARE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_DELETE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_EXTENDED);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_MODIFY);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_MODIFY_DN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_SEARCH);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_OPERATION_UNBIND);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_ADD);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_BIND);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_COMPARE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_DELETE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_EXTENDED);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_MODIFY);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_MODIFY_DN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_RESPONSE_SEARCH);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_POST_SYNCHRONIZATION_ADD);
    PLUGIN_TYPE_NAMES.add(
         PluginType.NAME_POST_SYNCHRONIZATION_DELETE);
    PLUGIN_TYPE_NAMES.add(
         PluginType.NAME_POST_SYNCHRONIZATION_MODIFY);
    PLUGIN_TYPE_NAMES.add(
         PluginType.NAME_POST_SYNCHRONIZATION_MODIFY_DN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_SEARCH_ENTRY);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_SEARCH_REFERENCE);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_SUBORDINATE_MODIFY_DN);
    PLUGIN_TYPE_NAMES.add(PluginType.NAME_INTERMEDIATE_RESPONSE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_STARTUP, PluginType.STARTUP);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_SHUTDOWN,
                        PluginType.SHUTDOWN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_CONNECT,
                        PluginType.POST_CONNECT);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_DISCONNECT,
                        PluginType.POST_DISCONNECT);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_LDIF_IMPORT,
                        PluginType.LDIF_IMPORT);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_LDIF_EXPORT,
                        PluginType.LDIF_EXPORT);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_ABANDON,
                        PluginType.PRE_PARSE_ABANDON);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_ADD,
                        PluginType.PRE_PARSE_ADD);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_BIND,
                        PluginType.PRE_PARSE_BIND);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_COMPARE,
                        PluginType.PRE_PARSE_COMPARE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_DELETE,
                        PluginType.PRE_PARSE_DELETE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_EXTENDED,
                        PluginType.PRE_PARSE_EXTENDED);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_MODIFY,
                        PluginType.PRE_PARSE_MODIFY);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_MODIFY_DN,
                        PluginType.PRE_PARSE_MODIFY_DN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_SEARCH,
                        PluginType.PRE_PARSE_SEARCH);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_PARSE_UNBIND,
                        PluginType.PRE_PARSE_UNBIND);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_ADD,
                        PluginType.PRE_OPERATION_ADD);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_BIND,
                        PluginType.PRE_OPERATION_BIND);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_COMPARE,
                        PluginType.PRE_OPERATION_COMPARE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_DELETE,
                        PluginType.PRE_OPERATION_DELETE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_EXTENDED,
                        PluginType.PRE_OPERATION_EXTENDED);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_MODIFY,
                        PluginType.PRE_OPERATION_MODIFY);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_MODIFY_DN,
                        PluginType.PRE_OPERATION_MODIFY_DN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_PRE_OPERATION_SEARCH,
                        PluginType.PRE_OPERATION_SEARCH);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_ABANDON,
                        PluginType.POST_OPERATION_ABANDON);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_ADD,
                        PluginType.POST_OPERATION_ADD);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_BIND,
                        PluginType.POST_OPERATION_BIND);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_COMPARE,
                        PluginType.POST_OPERATION_COMPARE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_DELETE,
                        PluginType.POST_OPERATION_DELETE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_EXTENDED,
                        PluginType.POST_OPERATION_EXTENDED);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_MODIFY,
                        PluginType.POST_OPERATION_MODIFY);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_MODIFY_DN,
                        PluginType.POST_OPERATION_MODIFY_DN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_SEARCH,
                        PluginType.POST_OPERATION_SEARCH);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_OPERATION_UNBIND,
                        PluginType.POST_OPERATION_UNBIND);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_ADD,
                        PluginType.POST_RESPONSE_ADD);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_BIND,
                        PluginType.POST_RESPONSE_BIND);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_COMPARE,
                        PluginType.POST_RESPONSE_COMPARE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_DELETE,
                        PluginType.POST_RESPONSE_DELETE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_EXTENDED,
                        PluginType.POST_RESPONSE_EXTENDED);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_MODIFY,
                        PluginType.POST_RESPONSE_MODIFY);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_MODIFY_DN,
                        PluginType.POST_RESPONSE_MODIFY_DN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_RESPONSE_SEARCH,
                        PluginType.POST_RESPONSE_SEARCH);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_SYNCHRONIZATION_ADD,
                        PluginType.POST_SYNCHRONIZATION_ADD);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_SYNCHRONIZATION_DELETE,
                        PluginType.POST_SYNCHRONIZATION_DELETE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_POST_SYNCHRONIZATION_MODIFY,
                        PluginType.POST_SYNCHRONIZATION_MODIFY);
    PLUGIN_TYPE_MAP.put(
         PluginType.NAME_POST_SYNCHRONIZATION_MODIFY_DN,
         PluginType.POST_SYNCHRONIZATION_MODIFY_DN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_SEARCH_ENTRY,
                        PluginType.SEARCH_RESULT_ENTRY);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_SEARCH_REFERENCE,
                        PluginType.SEARCH_RESULT_REFERENCE);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_SUBORDINATE_MODIFY_DN,
                        PluginType.SUBORDINATE_MODIFY_DN);
    PLUGIN_TYPE_MAP.put(PluginType.NAME_INTERMEDIATE_RESPONSE,
                        PluginType.INTERMEDIATE_RESPONSE);
    PLUGIN_TYPE_MAP =
        new HashMap<String, PluginType>(PluginType.values().length);
    for (PluginType type : PluginType.values())
    {
      PLUGIN_TYPE_MAP.put(type.name, type);
    }
  }
@@ -1056,6 +498,7 @@
   *
   * @return  A string representation of this plugin type.
   */
  @Override
  public String toString()
  {
    return name;
@@ -1071,7 +514,7 @@
   */
  public static Set<String> getPluginTypeNames()
  {
    return PLUGIN_TYPE_NAMES;
    return PLUGIN_TYPE_MAP.keySet();
  }
opends/src/server/org/opends/server/controls/PasswordPolicyErrorType.java
@@ -22,15 +22,19 @@
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2008 Sun Microsystems, Inc.
 *      Copyright 2006-2009 Sun Microsystems, Inc.
 */
package org.opends.server.controls;
import org.opends.messages.Message;
import static org.opends.messages.ProtocolMessages.*;
import java.util.HashMap;
import java.util.Map;
import org.opends.messages.Message;
/**
@@ -44,7 +48,7 @@
   * The error type that will be used to indicate that the user's password is
   * expired.
   */
  PASSWORD_EXPIRED(PasswordPolicyErrorType.TYPE_PASSWORD_EXPIRED,
  PASSWORD_EXPIRED(0,
                   INFO_PWPERRTYPE_DESCRIPTION_PASSWORD_EXPIRED.get()),
@@ -53,7 +57,7 @@
   * The error type that will be used to indicate that the user's account is
   * locked.
   */
  ACCOUNT_LOCKED(PasswordPolicyErrorType.TYPE_ACCOUNT_LOCKED,
  ACCOUNT_LOCKED(1,
                 INFO_PWPERRTYPE_DESCRIPTION_ACCOUNT_LOCKED.get()),
@@ -62,7 +66,7 @@
   * The error type that will be used to indicate that the user's password must
   * be changed because it has been administratively reset.
   */
  CHANGE_AFTER_RESET(PasswordPolicyErrorType.TYPE_CHANGE_AFTER_RESET,
  CHANGE_AFTER_RESET(2,
                     INFO_PWPERRTYPE_DESCRIPTION_CHANGE_AFTER_RESET.get()),
@@ -72,7 +76,7 @@
   * not allowed.
   */
  PASSWORD_MOD_NOT_ALLOWED(
       PasswordPolicyErrorType.TYPE_PASSWORD_MOD_NOT_ALLOWED,
       3,
       INFO_PWPERRTYPE_DESCRIPTION_PASSWORD_MOD_NOT_ALLOWED.get()),
@@ -82,7 +86,7 @@
   * password must be provided in order to choose a new password.
   */
  MUST_SUPPLY_OLD_PASSWORD(
       PasswordPolicyErrorType.TYPE_MUST_SUPPLY_OLD_PASSWORD,
       4,
       INFO_PWPERRTYPE_DESCRIPTION_MUST_SUPPLY_OLD_PASSWORD.get()),
@@ -92,7 +96,7 @@
   * not acceptable according to the configured password validators.
   */
  INSUFFICIENT_PASSWORD_QUALITY(
       PasswordPolicyErrorType.TYPE_INSUFFICIENT_PASSWORD_QUALITY,
       5,
       INFO_PWPERRTYPE_DESCRIPTION_INSUFFICIENT_PASSWORD_QUALITY.get()),
@@ -101,7 +105,7 @@
   * The error type that will be used to indicate that the provided password is
   * too short.
   */
  PASSWORD_TOO_SHORT(PasswordPolicyErrorType.TYPE_PASSWORD_TOO_SHORT,
  PASSWORD_TOO_SHORT(6,
                     INFO_PWPERRTYPE_DESCRIPTION_PASSWORD_TOO_SHORT.get()),
@@ -111,7 +115,7 @@
   * too young (i.e., it was changed too recently to allow it to be changed
   * again).
   */
  PASSWORD_TOO_YOUNG(PasswordPolicyErrorType.TYPE_PASSWORD_TOO_YOUNG,
  PASSWORD_TOO_YOUNG(7,
                     INFO_PWPERRTYPE_DESCRIPTION_PASSWORD_TOO_YOUNG.get()),
@@ -120,71 +124,24 @@
   * The error type that will be used to indicate that the provided password is
   * in the user's password history.
   */
  PASSWORD_IN_HISTORY(PasswordPolicyErrorType.TYPE_PASSWORD_IN_HISTORY,
  PASSWORD_IN_HISTORY(8,
                      INFO_PWPERRTYPE_DESCRIPTION_PASSWORD_IN_HISTORY.get());
  /**
   * The value that will be used for the passwordExpired type.
   */
  public static final int TYPE_PASSWORD_EXPIRED = 0;
  // A lookup table for resolving an error type from its integer value.
  private static final Map<Integer, PasswordPolicyErrorType> TABLE;
  static
  {
    TABLE = new HashMap<Integer, PasswordPolicyErrorType>();
  /**
   * The value that will be used for the accountLocked type.
   */
  public static final int TYPE_ACCOUNT_LOCKED = 1;
  /**
   * The value that will be used for the changeAfterReset type.
   */
  public static final int TYPE_CHANGE_AFTER_RESET = 2;
  /**
   * The value that will be used for the passwordModNotAllowed type.
   */
  public static final int TYPE_PASSWORD_MOD_NOT_ALLOWED = 3;
  /**
   * The value that will be used for the mustSupplyOldPassword type.
   */
  public static final int TYPE_MUST_SUPPLY_OLD_PASSWORD = 4;
  /**
   * The value that will be used for the insufficientPasswordQuality type.
   */
  public static final int TYPE_INSUFFICIENT_PASSWORD_QUALITY = 5;
  /**
   * The value that will be used for the passwordTooShort type.
   */
  public static final int TYPE_PASSWORD_TOO_SHORT = 6;
  /**
   * The value that will be used for the passwordTooYoung type.
   */
  public static final int TYPE_PASSWORD_TOO_YOUNG = 7;
  /**
   * The value that will be used for the passwordInHistory type.
   */
  public static final int TYPE_PASSWORD_IN_HISTORY = 8;
    for (PasswordPolicyErrorType type : PasswordPolicyErrorType
        .values())
    {
      TABLE.put(type.value, type);
      TABLE.put(type.value, type);
    }
  }
@@ -241,29 +198,7 @@
   */
  public static PasswordPolicyErrorType valueOf(int value)
  {
    switch (value)
    {
      case TYPE_PASSWORD_EXPIRED:
        return PasswordPolicyErrorType.PASSWORD_EXPIRED;
      case TYPE_ACCOUNT_LOCKED:
        return PasswordPolicyErrorType.ACCOUNT_LOCKED;
      case TYPE_CHANGE_AFTER_RESET:
        return PasswordPolicyErrorType.CHANGE_AFTER_RESET;
      case TYPE_PASSWORD_MOD_NOT_ALLOWED:
        return PasswordPolicyErrorType.PASSWORD_MOD_NOT_ALLOWED;
      case TYPE_MUST_SUPPLY_OLD_PASSWORD:
        return PasswordPolicyErrorType.MUST_SUPPLY_OLD_PASSWORD;
      case TYPE_INSUFFICIENT_PASSWORD_QUALITY:
        return PasswordPolicyErrorType.INSUFFICIENT_PASSWORD_QUALITY;
      case TYPE_PASSWORD_TOO_SHORT:
        return PasswordPolicyErrorType.PASSWORD_TOO_SHORT;
      case TYPE_PASSWORD_TOO_YOUNG:
        return PasswordPolicyErrorType.PASSWORD_TOO_YOUNG;
      case TYPE_PASSWORD_IN_HISTORY:
        return PasswordPolicyErrorType.PASSWORD_IN_HISTORY;
      default:
        return null;
    }
    return TABLE.get(Integer.valueOf(value));
  }
@@ -273,6 +208,7 @@
   *
   * @return  A string representation of this password policy error type.
   */
  @Override
  public String toString()
  {
    return description.toString();
opends/src/server/org/opends/server/controls/PasswordPolicyWarningType.java
@@ -22,15 +22,19 @@
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2008 Sun Microsystems, Inc.
 *      Copyright 2006-2009 Sun Microsystems, Inc.
 */
package org.opends.server.controls;
import org.opends.messages.Message;
import static org.opends.messages.ProtocolMessages.*;
import java.util.HashMap;
import java.util.Map;
import org.opends.messages.Message;
/**
@@ -45,7 +49,7 @@
   * expire in the near future and to provide the length of time in seconds
   * until expiration.
   */
  TIME_BEFORE_EXPIRATION(PasswordPolicyWarningType.TYPE_TIME_BEFORE_EXPIRATION,
  TIME_BEFORE_EXPIRATION((byte) 0x80,
                     INFO_PWPWARNTYPE_DESCRIPTION_TIME_BEFORE_EXPIRATION.get()),
@@ -55,31 +59,33 @@
   * authenticating using a grace login and to provide the number of grace
   * logins that the user has left.
   */
  GRACE_LOGINS_REMAINING(PasswordPolicyWarningType.TYPE_GRACE_LOGINS_REMAINING,
  GRACE_LOGINS_REMAINING((byte) 0x81,
                     INFO_PWPWARNTYPE_DESCRIPTION_GRACE_LOGINS_REMAINING.get());
  /**
   * The BER type that will be used for the time before expiration type.
   */
  public static final byte TYPE_TIME_BEFORE_EXPIRATION = (byte) 0x80;
  // A lookup table for resolving a warning type from its BER type.
  private static final Map<Byte, PasswordPolicyWarningType> TABLE;
  static
  {
    TABLE = new HashMap<Byte, PasswordPolicyWarningType>();
  /**
   * The BER type that will be used for the grace logins remaining type.
   */
  public static final byte TYPE_GRACE_LOGINS_REMAINING = (byte) 0x81;
    for (PasswordPolicyWarningType value : PasswordPolicyWarningType
        .values())
    {
      TABLE.put(value.type, value);
      TABLE.put(value.type, value);
    }
  }
  // The BER type to use for the associated element in the password policy
  // control.
  private byte type;
  private final byte type;
  // The message ID for the description of this password policy error type.
  private Message description;
  private final Message description;
@@ -125,15 +131,7 @@
   */
  public static PasswordPolicyWarningType valueOf(byte type)
  {
    switch (type)
    {
      case TYPE_TIME_BEFORE_EXPIRATION:
        return PasswordPolicyWarningType.TIME_BEFORE_EXPIRATION;
      case TYPE_GRACE_LOGINS_REMAINING:
        return PasswordPolicyWarningType.GRACE_LOGINS_REMAINING;
      default:
        return null;
    }
    return TABLE.get(Byte.valueOf(type));
  }
@@ -143,6 +141,7 @@
   *
   * @return  A string representation of this password policy warning type.
   */
  @Override
  public String toString()
  {
    return Message.toString(description);