From fef6bf6f14335a840bfa1b0b34ca5f1658155fd1 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 05 Mar 2014 08:15:38 +0000
Subject: [PATCH] OPENDJ-1308 Migrate schema support
---
opendj3-server-dev/src/server/org/opends/server/backends/SchemaBackend.java | 94 +++++++++++++----------------------------------
1 files changed, 26 insertions(+), 68 deletions(-)
diff --git a/opendj3-server-dev/src/server/org/opends/server/backends/SchemaBackend.java b/opendj3-server-dev/src/server/org/opends/server/backends/SchemaBackend.java
index aa04f87..a9f4e11 100644
--- a/opendj3-server-dev/src/server/org/opends/server/backends/SchemaBackend.java
+++ b/opendj3-server-dev/src/server/org/opends/server/backends/SchemaBackend.java
@@ -58,6 +58,7 @@
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ConditionResult;
import org.forgerock.opendj.ldap.ModificationType;
+import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.SearchScope;
import org.forgerock.opendj.ldap.schema.ObjectClassType;
import org.forgerock.util.Reject;
@@ -86,7 +87,6 @@
import org.opends.server.schema.NameFormSyntax;
import org.opends.server.schema.ObjectClassSyntax;
import org.opends.server.types.*;
-import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.util.DynamicConstants;
import org.opends.server.util.LDIFException;
import org.opends.server.util.LDIFReader;
@@ -3121,8 +3121,8 @@
// We allow only unimplemented syntaxes to be substituted.
if(schema.getSyntax(oid) !=null)
{
- LocalizableMessage message = ERR_ATTR_SYNTAX_INVALID_LDAP_SYNTAX.get(
- ldapSyntaxDesc.getDefinition(),oid);
+ LocalizableMessage message =
+ ERR_ATTR_SYNTAX_INVALID_LDAP_SYNTAX.get(ldapSyntaxDesc, oid);
throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION,
message);
}
@@ -3259,7 +3259,7 @@
if (schemaFile.equals(getSchemaFile(ldapSyntax)))
{
values.add(AttributeValues.create(ldapSyntaxesType,
- ldapSyntax.getDefinition()));
+ ldapSyntax.toString()));
}
}
@@ -3329,8 +3329,7 @@
{
if (schemaFile.equals(getSchemaFile(nf)))
{
- values.add(AttributeValues.create(
- nameFormsType, nf.getDefinition()));
+ values.add(AttributeValues.create(nameFormsType, nf.toString()));
}
}
}
@@ -3354,7 +3353,7 @@
if (schemaFile.equals(getSchemaFile(dcr)))
{
values.add(AttributeValues.create(ditContentRulesType,
- dcr.getDefinition()));
+ dcr.toString()));
}
}
@@ -3401,7 +3400,7 @@
if (schemaFile.equals(getSchemaFile(mru)))
{
values.add(AttributeValues.create(matchingRuleUsesType,
- mru.getDefinition()));
+ mru.toString()));
}
}
@@ -3485,7 +3484,7 @@
}
values.add(AttributeValues.create(attributeTypesType,
- attributeType.getDefinition()));
+ attributeType.toString()));
addedTypes.add(attributeType);
}
@@ -3536,7 +3535,7 @@
}
}
values.add(AttributeValues.create(objectClassesType,
- objectClass.getDefinition()));
+ objectClass.toString()));
addedClasses.add(objectClass);
}
@@ -3587,7 +3586,7 @@
}
values.add(AttributeValues.create(ditStructureRulesType,
- ditStructureRule.getDefinition()));
+ ditStructureRule.toString()));
addedDSRs.add(ditStructureRule);
}
@@ -3712,20 +3711,7 @@
{
logger.traceException(e);
- for (File f : installedFileList)
- {
- try
- {
- if (f.exists())
- {
- f.delete();
- }
- }
- catch (Exception e2)
- {
- logger.traceException(e2);
- }
- }
+ deleteFiles(installedFileList);
boolean allRestored = true;
for (int i=0; i < installedFileList.size(); i++)
@@ -3772,38 +3758,28 @@
}
}
+ deleteFiles(origFileList);
+ deleteFiles(tempFileList);
+ }
- // At this point, we're committed to the schema change, so we can't throw
- // any more exceptions, but all we have left is to clean up the original and
- // temporary files.
- for (File f : origFileList)
+ private void deleteFiles(Iterable<File> files)
+ {
+ if (files != null)
{
- try
+ for (File f : files)
{
- if (f.exists())
+ try
{
- f.delete();
+ if (f.exists())
+ {
+ f.delete();
+ }
}
- }
- catch (Exception e)
- {
- logger.traceException(e);
- }
- }
-
- for (File f : tempFileList)
- {
- try
- {
- if (f.exists())
+ catch (Exception e)
{
- f.delete();
+ logger.traceException(e);
}
}
- catch (Exception e)
- {
- logger.traceException(e);
- }
}
}
@@ -3852,25 +3828,7 @@
*/
private void cleanUpTempSchemaFiles(HashMap<String,File> tempSchemaFiles)
{
- if ((tempSchemaFiles == null) || tempSchemaFiles.isEmpty())
- {
- return;
- }
-
- for (File f : tempSchemaFiles.values())
- {
- try
- {
- if (f.exists())
- {
- f.delete();
- }
- }
- catch (Exception e)
- {
- logger.traceException(e);
- }
- }
+ deleteFiles(tempSchemaFiles.values());
}
--
Gitblit v1.10.0