From 640ac743fe38377eca4dba3cbd83adaa42853bb0 Mon Sep 17 00:00:00 2001
From: Nicolas Capponi <nicolas.capponi@forgerock.com>
Date: Wed, 01 Oct 2014 11:40:53 +0000
Subject: [PATCH] OPENDJ-1308 Migrate schema support - Matching Rules
---
opendj3-server-dev/replace.rb | 28 +++++++++++---
opendj3-server-dev/src/server/org/opends/server/schema/LDAPSyntaxDescriptionSyntax.java | 16 +++++---
opendj3-server-dev/src/server/org/opends/server/schema/BinarySyntax.java | 3 +
opendj3-server-dev/src/server/org/opends/server/schema/CollationMatchingRuleFactory.java | 28 ++++++++++++-
opendj3-server-dev/src/server/org/opends/server/schema/TimeBasedMatchingRuleFactory.java | 17 +++++++-
5 files changed, 74 insertions(+), 18 deletions(-)
diff --git a/opendj3-server-dev/replace.rb b/opendj3-server-dev/replace.rb
index d6a8af7..95d6bd1 100755
--- a/opendj3-server-dev/replace.rb
+++ b/opendj3-server-dev/replace.rb
@@ -44,12 +44,28 @@
/import org.opends.server.api.MatchingRule;/,
'import org.forgerock.opendj.ldap.schema.MatchingRule;',
- # For MR factories
- /\binitializeMatchingRule\(MatchingRuleCfg configuration\)/,
- "initializeMatchingRule(ServerContext serverContext, MatchingRuleCfg configuration)",
+ ]
+ }
- # For MR factories
- /\bmatchingRule = new \w*MatchingRule();/,
+ MRULES_FACTORIES = {
+ :dirs => ["src/server/org/opends/server/schema"],
+ :extensions => ["java"],
+ :stopwords => [],
+ :replacements =>
+ [
+ /import org.opends.server.api.MatchingRule;/,
+ 'import org.forgerock.opendj.ldap.schema.MatchingRule;',
+
+ /private MatchingRule matchingRule;/,
+ "private org.forgerock.opendj.ldap.schema.MatchingRule matchingRule;",
+
+ /public final Collection<MatchingRule> getMatchingRules\(\)/,
+ "public final Collection<org.forgerock.opendj.ldap.schema.MatchingRule> getMatchingRules()",
+
+ /public final void initializeMatchingRule\(MatchingRuleCfg configuration\)/,
+ "public final void initializeMatchingRule(ServerContext serverContext, MatchingRuleCfg configuration)",
+
+ /\bmatchingRule = new \w*MatchingRule\(\);/,
"matchingRule = serverContext.getSchemaNG().getMatchingRule(EMR_);"
]
@@ -344,7 +360,7 @@
############################### List of replacements to run #################################
- REPLACEMENTS = [ MRULES ]
+ REPLACEMENTS = [ MRULES_TO_SDK, MRULES_FACTORIES ]
################################### Processing methods ########################################
diff --git a/opendj3-server-dev/src/server/org/opends/server/schema/BinarySyntax.java b/opendj3-server-dev/src/server/org/opends/server/schema/BinarySyntax.java
index 958950d..67eb364 100644
--- a/opendj3-server-dev/src/server/org/opends/server/schema/BinarySyntax.java
+++ b/opendj3-server-dev/src/server/org/opends/server/schema/BinarySyntax.java
@@ -31,7 +31,8 @@
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.ByteSequence;
import org.opends.server.admin.std.server.AttributeSyntaxCfg;
-import org.opends.server.api.*;
+import org.opends.server.api.AttributeSyntax;
+import org.opends.server.api.MatchingRule;
import org.opends.server.core.DirectoryServer;
import static org.opends.messages.SchemaMessages.*;
diff --git a/opendj3-server-dev/src/server/org/opends/server/schema/CollationMatchingRuleFactory.java b/opendj3-server-dev/src/server/org/opends/server/schema/CollationMatchingRuleFactory.java
index f154519..e4382c7 100644
--- a/opendj3-server-dev/src/server/org/opends/server/schema/CollationMatchingRuleFactory.java
+++ b/opendj3-server-dev/src/server/org/opends/server/schema/CollationMatchingRuleFactory.java
@@ -29,19 +29,41 @@
import java.nio.CharBuffer;
import java.text.CollationKey;
import java.text.Collator;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+import java.util.SortedSet;
+import java.util.TreeSet;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.config.server.ConfigException;
-import org.forgerock.opendj.ldap.*;
+import org.forgerock.opendj.ldap.ByteSequence;
+import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.ByteStringBuilder;
+import org.forgerock.opendj.ldap.ConditionResult;
+import org.forgerock.opendj.ldap.DecodeException;
+import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.schema.Schema;
import org.forgerock.opendj.ldap.spi.IndexQueryFactory;
import org.forgerock.opendj.ldap.spi.IndexingOptions;
import org.opends.server.admin.server.ConfigurationChangeListener;
import org.opends.server.admin.std.meta.CollationMatchingRuleCfgDefn.MatchingRuleType;
import org.opends.server.admin.std.server.CollationMatchingRuleCfg;
-import org.opends.server.api.*;
+import org.opends.server.api.AbstractMatchingRule;
+import org.opends.server.api.ExtensibleIndexer;
+import org.opends.server.api.ExtensibleMatchingRule;
+import org.opends.server.api.MatchingRule;
+import org.opends.server.api.MatchingRuleFactory;
+import org.opends.server.api.OrderingMatchingRule;
import org.opends.server.core.DirectoryServer;
import org.opends.server.types.ConfigChangeResult;
import org.opends.server.types.DirectoryException;
diff --git a/opendj3-server-dev/src/server/org/opends/server/schema/LDAPSyntaxDescriptionSyntax.java b/opendj3-server-dev/src/server/org/opends/server/schema/LDAPSyntaxDescriptionSyntax.java
index e718b40..29baa25 100644
--- a/opendj3-server-dev/src/server/org/opends/server/schema/LDAPSyntaxDescriptionSyntax.java
+++ b/opendj3-server-dev/src/server/org/opends/server/schema/LDAPSyntaxDescriptionSyntax.java
@@ -26,22 +26,26 @@
*/
package org.opends.server.schema;
-
-
-
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.LinkedList;
+import java.util.List;
import java.util.regex.Pattern;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.LocalizableMessageBuilder;
import org.forgerock.i18n.slf4j.LocalizedLogger;
+import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.ByteSequence;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.DecodeException;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.admin.std.server.AttributeSyntaxCfg;
-import org.opends.server.api.*;
-import org.forgerock.opendj.config.server.ConfigException;
+import org.opends.server.api.AttributeSyntax;
+import org.opends.server.api.MatchingRule;
import org.opends.server.core.DirectoryServer;
import org.opends.server.types.CommonSchemaElements;
import org.opends.server.types.DirectoryException;
diff --git a/opendj3-server-dev/src/server/org/opends/server/schema/TimeBasedMatchingRuleFactory.java b/opendj3-server-dev/src/server/org/opends/server/schema/TimeBasedMatchingRuleFactory.java
index 428dd7c..4fe25be 100644
--- a/opendj3-server-dev/src/server/org/opends/server/schema/TimeBasedMatchingRuleFactory.java
+++ b/opendj3-server-dev/src/server/org/opends/server/schema/TimeBasedMatchingRuleFactory.java
@@ -27,7 +27,15 @@
package org.opends.server.schema;
import java.nio.ByteBuffer;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.GregorianCalendar;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.TimeZone;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
@@ -42,7 +50,12 @@
import org.forgerock.opendj.ldap.spi.IndexQueryFactory;
import org.forgerock.opendj.ldap.spi.IndexingOptions;
import org.opends.server.admin.std.server.MatchingRuleCfg;
-import org.opends.server.api.*;
+import org.opends.server.api.AbstractMatchingRule;
+import org.opends.server.api.ExtensibleIndexer;
+import org.opends.server.api.ExtensibleMatchingRule;
+import org.opends.server.api.MatchingRule;
+import org.opends.server.api.MatchingRuleFactory;
+import org.opends.server.api.OrderingMatchingRule;
import org.opends.server.core.DirectoryServer;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.InitializationException;
--
Gitblit v1.10.0