From 4ad5cdf33a90896d3514cc17aa79c4b6f8378c4b Mon Sep 17 00:00:00 2001
From: Nicolas Capponi <nicolas.capponi@forgerock.com>
Date: Fri, 09 Sep 2016 09:45:26 +0000
Subject: [PATCH] OPENDJ-3089 Add upgrade task to remove syntaxes configuration and add schema providers configuration

---
 opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/Upgrade.java |   69 ++++++++++++++++++++++++++++++++++
 opendj-server-legacy/src/messages/org/opends/messages/tool.properties           |    4 ++
 opendj-server-legacy/resource/config/config.ldif                                |    2 -
 3 files changed, 73 insertions(+), 2 deletions(-)

diff --git a/opendj-server-legacy/resource/config/config.ldif b/opendj-server-legacy/resource/config/config.ldif
index 97f7a60..74c2e98 100644
--- a/opendj-server-legacy/resource/config/config.ldif
+++ b/opendj-server-legacy/resource/config/config.ldif
@@ -72,8 +72,6 @@
 cn: Core Schema
 ds-cfg-java-class: org.opends.server.schema.CoreSchemaProvider
 ds-cfg-enabled: true
-ds-cfg-strip-syntax-min-upper-bound-attribute-type-description: false
-ds-cfg-strict-format-country-string: false
 
 dn: cn=Access Control Handler,cn=config
 objectClass: top
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/Upgrade.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/Upgrade.java
index fc9c598..2506897 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/Upgrade.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/Upgrade.java
@@ -536,6 +536,75 @@
         addConfigFile("rest2ldap")
     );
 
+    /* See OPENDJ-3089 */
+    register("4.0.0",
+        addConfigEntry(INFO_UPGRADE_TASK_ADD_SCHEMA_PROVIDERS.get(),
+            "dn: cn=Schema Providers,cn=config",
+            "objectClass: top",
+            "objectClass: ds-cfg-branch",
+            "cn: Schema Providers"),
+        addConfigEntry(
+            "dn: cn=Core Schema,cn=Schema Providers,cn=config",
+            "objectClass: top",
+            "objectClass: ds-cfg-schema-provider",
+            "objectClass: ds-cfg-core-schema",
+            "cn: Core Schema",
+            "ds-cfg-java-class: org.opends.server.schema.CoreSchemaProvider",
+            "ds-cfg-enabled: true"),
+        deleteConfigEntry(INFO_UPGRADE_TASK_REMOVE_MATCHING_RULES_ENTRY.get(),
+            "cn=Matching Rules,cn=config"),
+        deleteConfigEntry(INFO_UPGRADE_TASK_REMOVE_SYNTAXES.get(),
+            "cn=Sun-defined Access Control Information,cn=Syntaxes,cn=config",
+            "cn=Attribute Type Description,cn=Syntaxes,cn=config",
+            "cn=Authentication Password,cn=Syntaxes,cn=config",
+            "cn=Binary,cn=Syntaxes,cn=config",
+            "cn=Bit String,cn=Syntaxes,cn=config",
+            "cn=Boolean,cn=Syntaxes,cn=config",
+            "cn=Certificate,cn=Syntaxes,cn=config",
+            "cn=Certificate Exact Assertion,cn=Syntaxes,cn=config",
+            "cn=Certificate List,cn=Syntaxes,cn=config",
+            "cn=Certificate Pair,cn=Syntaxes,cn=config",
+            "cn=Country String,cn=Syntaxes,cn=config",
+            "cn=Delivery Method,cn=Syntaxes,cn=config",
+            "cn=Directory String,cn=Syntaxes,cn=config",
+            "cn=Distinguished Name,cn=Syntaxes,cn=config",
+            "cn=DIT Content Rule Description,cn=Syntaxes,cn=config",
+            "cn=DIT Structure Rule Description,cn=Syntaxes,cn=config",
+            "cn=Enhanced Guide,cn=Syntaxes,cn=config",
+            "cn=Facsimile Telephone Number,cn=Syntaxes,cn=config",
+            "cn=Fax,cn=Syntaxes,cn=config",
+            "cn=Generalized Time,cn=Syntaxes,cn=config",
+            "cn=Guide,cn=Syntaxes,cn=config",
+            "cn=IA5 String,cn=Syntaxes,cn=config",
+            "cn=Integer,cn=Syntaxes,cn=config",
+            "cn=JPEG,cn=Syntaxes,cn=config",
+            "cn=LDAP Syntax Description,cn=Syntaxes,cn=config",
+            "cn=Matching Rule Description,cn=Syntaxes,cn=config",
+            "cn=Matching Rule Use Description,cn=Syntaxes,cn=config",
+            "cn=Name and Optional UID,cn=Syntaxes,cn=config",
+            "cn=Name Form Description,cn=Syntaxes,cn=config",
+            "cn=Numeric String,cn=Syntaxes,cn=config",
+            "cn=Object Class Description,cn=Syntaxes,cn=config",
+            "cn=Object Identifier,cn=Syntaxes,cn=config",
+            "cn=Octet String,cn=Syntaxes,cn=config",
+            "cn=Other Mailbox,cn=Syntaxes,cn=config",
+            "cn=Postal Address,cn=Syntaxes,cn=config",
+            "cn=Presentation Address,cn=Syntaxes,cn=config",
+            "cn=Printable String,cn=Syntaxes,cn=config",
+            "cn=Protocol Information,cn=Syntaxes,cn=config",
+            "cn=Substring Assertion,cn=Syntaxes,cn=config",
+            "cn=Subtree Specification,cn=Syntaxes,cn=config",
+            "cn=Supported Algorithm,cn=Syntaxes,cn=config",
+            "cn=Telephone Number,cn=Syntaxes,cn=config",
+            "cn=Teletex Terminal Identifier,cn=Syntaxes,cn=config",
+            "cn=Telex Number,cn=Syntaxes,cn=config",
+            "cn=UTC Time,cn=Syntaxes,cn=config",
+            "cn=User Password,cn=Syntaxes,cn=config",
+            "cn=UUID,cn=Syntaxes,cn=config",
+            "cn=Syntaxes,cn=config")
+    );
+
+
     /* All upgrades will refresh the server configuration schema and generate a new upgrade folder. */
     registerLast(
         performOEMMigrationIfNeeded(),
diff --git a/opendj-server-legacy/src/messages/org/opends/messages/tool.properties b/opendj-server-legacy/src/messages/org/opends/messages/tool.properties
index fa75f3d..4798fd8 100644
--- a/opendj-server-legacy/src/messages/org/opends/messages/tool.properties
+++ b/opendj-server-legacy/src/messages/org/opends/messages/tool.properties
@@ -2570,6 +2570,10 @@
 INFO_UPGRADE_TASK_DISABLING_HTTP_CONNECTION_HANDLER_10074=Disabling the HTTP connection handler
 INFO_UPGRADE_TASK_ADDING_DEFAULT_HTTP_ENDPOINTS_AND_AUTH_10075=Adding default HTTP endpoints and auth mechanisms to \
   configuration
+INFO_UPGRADE_TASK_REMOVE_MATCHING_RULES_ENTRY_10076=Removing top configuration entry \
+ for matching rules
+INFO_UPGRADE_TASK_REMOVE_SYNTAXES_10077=Removing configuration for syntaxes
+INFO_UPGRADE_TASK_ADD_SCHEMA_PROVIDERS_10078=Adding configuration for schema providers
 
 # Strings for generated reference documentation.
 REF_SHORT_DESC_BACKUP_15000=back up OpenDJ directory data

--
Gitblit v1.10.0