From 9ca3c4828a35ac7e54bc5c00e8a08875a0ba65cd Mon Sep 17 00:00:00 2001
From: Nicolas Capponi <nicolas.capponi@forgerock.com>
Date: Fri, 09 Sep 2016 09:45:25 +0000
Subject: [PATCH] OPENDJ-3089 OPENDJ-1237 Add missing server matching rules in SchemaHandler initialization

---
 opendj-server-legacy/src/main/java/org/opends/server/schema/UserPasswordEqualityMatchingRule.java |   20 +++++++++++++++++++-
 1 files changed, 19 insertions(+), 1 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/schema/UserPasswordEqualityMatchingRule.java b/opendj-server-legacy/src/main/java/org/opends/server/schema/UserPasswordEqualityMatchingRule.java
index 37704c2..5f0865b 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/schema/UserPasswordEqualityMatchingRule.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/schema/UserPasswordEqualityMatchingRule.java
@@ -16,10 +16,13 @@
  */
 package org.opends.server.schema;
 
+import static org.opends.server.schema.SchemaConstants.*;
+
 import org.forgerock.i18n.slf4j.LocalizedLogger;
 import org.forgerock.opendj.ldap.ByteSequence;
 import org.forgerock.opendj.ldap.ByteString;
 import org.forgerock.opendj.ldap.ConditionResult;
+import org.forgerock.opendj.ldap.schema.SchemaBuilder;
 import org.opends.server.api.PasswordStorageScheme;
 
 import static org.opends.server.core.DirectoryServer.*;
@@ -31,7 +34,7 @@
  * This matching rule serves a similar purpose to the equivalent
  * AuthPasswordEqualityMatchingRule defined in RFC 3112 (http://tools.ietf.org/html/rfc3112).
  */
-class UserPasswordEqualityMatchingRule extends AbstractPasswordEqualityMatchingRuleImpl
+public class UserPasswordEqualityMatchingRule extends AbstractPasswordEqualityMatchingRuleImpl
 {
   private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
 
@@ -66,4 +69,19 @@
         storageScheme.passwordMatches(assertionValue, ByteString.valueOfUtf8(userPWComponents[1])));
   }
 
+  /**
+   * Adds the user password equality matching rule to the provided schema builder.
+   *
+   * @param builder
+   *          where to add the matching rule
+   */
+  public static void addUserPasswordEqualityMatchingRule(SchemaBuilder builder)
+  {
+    builder.buildMatchingRule(EMR_USER_PASSWORD_OID)
+      .names(EMR_USER_PASSWORD_NAME)
+      .syntaxOID(SYNTAX_OCTET_STRING_OID).description(EMR_USER_PASSWORD_DESCRIPTION)
+      .implementation(new UserPasswordEqualityMatchingRule())
+      .addToSchema();
+  }
+
 }

--
Gitblit v1.10.0