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

Matthew Swift
20.53.2015 c3c61f8a3b4ba1e737253efce1699d0daece0273
OPENDJ-1936 - don't allow users to configure a JE backend if it is unsupported
2 files modified
25 ■■■■■ changed files
opendj-server-legacy/src/main/java/org/opends/server/tools/BackendTypeHelper.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/InstallDSArgumentParser.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/BackendTypeHelper.java
@@ -139,20 +139,26 @@
    }
  }
  private List<ManagedObjectDefinition<? extends BackendCfgClient, ? extends BackendCfg>> backends;
  private final List<ManagedObjectDefinition<? extends BackendCfgClient, ? extends BackendCfg>> backends;
  /** Creates a new backend type helper. */
  @SuppressWarnings("unchecked")
  public BackendTypeHelper()
  {
    Utilities.initializeConfigurationFramework();
    createAvailableBackendsList();
  }
  @SuppressWarnings("unchecked")
  private void createAvailableBackendsList()
  {
    backends = new LinkedList<>();
    backends.add(LocalDBBackendCfgDefn.getInstance());
    // Add the JE backend if it is supported in this release.
    try
    {
      Class.forName("org.opends.server.backends.jeb.BackendImpl");
      backends.add(LocalDBBackendCfgDefn.getInstance());
    }
    catch (ClassNotFoundException ignored)
    {
      // Ignore: JE backend not supported.
    }
    for (AbstractManagedObjectDefinition<?, ?> backendType : PluggableBackendCfgDefn.getInstance().getAllChildren())
    {
opendj-server-legacy/src/main/java/org/opends/server/tools/InstallDSArgumentParser.java
@@ -39,7 +39,6 @@
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.LocalizableMessageDescriptor.Arg1;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.server.config.meta.LocalDBBackendCfgDefn;
import org.opends.quicksetup.Constants;
import org.opends.quicksetup.Installation;
import org.opends.quicksetup.UserData;
@@ -399,12 +398,12 @@
        OPTION_LONG_BACKEND_TYPE.toLowerCase(),
        OPTION_SHORT_BACKEND_TYPE, OPTION_LONG_BACKEND_TYPE,
        false, false, true, INFO_INSTALLDS_BACKEND_TYPE_PLACEHOLDER.get(),
        BackendTypeHelper.filterSchemaBackendName(LocalDBBackendCfgDefn.getInstance().getName()),
        BackendTypeHelper.filterSchemaBackendName(
            new BackendTypeHelper().getBackendTypes().get(0).getName()),
        OPTION_LONG_BACKEND_TYPE,
        INFO_INSTALLDS_DESCRIPTION_BACKEND_TYPE.get()
    );
    addArgument(backendTypeArg);
  }
  /**