From 2bdcb07b1db84f321a3a84988799d2c78b1a1741 Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Fri, 24 Apr 2015 07:53:59 +0000
Subject: [PATCH] OPENDJ-1934 UI: Create/Update VLV indexes

---
 opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java |   63 ++++++++++++++++++++++++++++++-
 1 files changed, 60 insertions(+), 3 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java b/opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java
index 3891de1..39c073d 100644
--- a/opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java
+++ b/opendj-server-legacy/src/main/java/org/forgerock/opendj/adapter/server3x/Converters.java
@@ -21,10 +21,12 @@
  * CDDL HEADER END
  *
  *
- *      Copyright 2013-2014 ForgeRock AS.
+ *      Copyright 2013-2015 ForgeRock AS.
  */
 package org.forgerock.opendj.adapter.server3x;
 
+import static org.forgerock.opendj.ldap.LdapException.*;
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -53,6 +55,10 @@
 import org.forgerock.opendj.ldap.responses.Responses;
 import org.forgerock.opendj.ldap.responses.Result;
 import org.forgerock.opendj.ldap.responses.SearchResultEntry;
+import org.forgerock.opendj.server.config.meta.BackendVLVIndexCfgDefn;
+import org.forgerock.opendj.server.config.meta.LocalDBVLVIndexCfgDefn;
+import org.forgerock.util.Reject;
+import org.opends.server.backends.jeb.RemoveOnceLocalDBBackendIsPluggable;
 import org.opends.server.core.BindOperation;
 import org.opends.server.core.CompareOperation;
 import org.opends.server.core.ExtendedOperation;
@@ -66,8 +72,6 @@
 import org.opends.server.types.Operation;
 import org.opends.server.types.SearchFilter;
 
-import static org.forgerock.opendj.ldap.LdapException.*;
-
 /**
  * Common utility methods.
  */
@@ -733,4 +737,57 @@
         return saslCred.toByteString();
     }
 
+    /**
+     * Converts from OpenDJ server
+     * {@link org.opends.server.admin.std.meta.BackendVLVIndexCfgDefn.Scope} to
+     * {@link org.forgerock.opendj.server.config.meta.BackendVLVIndexCfgDefn.Scope}.
+     *
+     * @param scope
+     *          The scope value.
+     * @return The converted scope value.
+     */
+    public static BackendVLVIndexCfgDefn.Scope from(
+        final org.opends.server.admin.std.meta.BackendVLVIndexCfgDefn.Scope scope) {
+      Reject.ifNull(scope, "Provided scope to convert is null");
+      switch (scope) {
+      case BASE_OBJECT:
+        return BackendVLVIndexCfgDefn.Scope.BASE_OBJECT;
+      case SINGLE_LEVEL:
+        return BackendVLVIndexCfgDefn.Scope.SINGLE_LEVEL;
+      case SUBORDINATE_SUBTREE:
+        return BackendVLVIndexCfgDefn.Scope.SUBORDINATE_SUBTREE;
+      case WHOLE_SUBTREE:
+        return BackendVLVIndexCfgDefn.Scope.WHOLE_SUBTREE;
+      default:
+        throw new IllegalArgumentException("Impossible to convert the unknown scope: " + scope);
+      }
+    }
+
+    /**
+     * Converts from OpenDJ server
+     * {@link org.opends.server.admin.std.meta.LocalDBVLVIndexCfgDefn.Scope} to
+     * {@link org.forgerock.opendj.server.config.meta.LocalDBVLVIndexCfgDefn.Scope}.
+     *
+     * @param scope
+     *          The scope value.
+     * @return The converted scope value.
+     */
+    @RemoveOnceLocalDBBackendIsPluggable
+    public static LocalDBVLVIndexCfgDefn.Scope from(
+        final org.opends.server.admin.std.meta.LocalDBVLVIndexCfgDefn.Scope scope) {
+      Reject.ifNull(scope, "Provided scope to convert is null");
+      switch (scope) {
+      case BASE_OBJECT:
+        return LocalDBVLVIndexCfgDefn.Scope.BASE_OBJECT;
+      case SINGLE_LEVEL:
+        return LocalDBVLVIndexCfgDefn.Scope.SINGLE_LEVEL;
+      case SUBORDINATE_SUBTREE:
+        return LocalDBVLVIndexCfgDefn.Scope.SUBORDINATE_SUBTREE;
+      case WHOLE_SUBTREE:
+        return LocalDBVLVIndexCfgDefn.Scope.WHOLE_SUBTREE;
+      default:
+        throw new IllegalArgumentException("Impossible to convert the unknown scope: " + scope);
+      }
+    }
+
 }

--
Gitblit v1.10.0