From 35b1a3583fa9625f97f8a36bff097b6719ebd658 Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Tue, 02 Jun 2015 09:38:05 +0000
Subject: [PATCH] OPENDJ-1122 Code cleanup
---
opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/SchemaLoader.java | 82 ++++++++-------------------
opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/RemoteSchemaLoader.java | 73 +++++++-----------------
2 files changed, 47 insertions(+), 108 deletions(-)
diff --git a/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/RemoteSchemaLoader.java b/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/RemoteSchemaLoader.java
index e885ad9..ae47858 100644
--- a/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/RemoteSchemaLoader.java
+++ b/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/RemoteSchemaLoader.java
@@ -22,13 +22,11 @@
*
*
* Copyright 2009-2010 Sun Microsystems, Inc.
- * Portions Copyright 2013-2014 ForgeRock AS
+ * Portions Copyright 2013-2015 ForgeRock AS
*/
-
package org.opends.guitools.controlpanel.util;
import java.util.HashSet;
-import java.util.List;
import java.util.Set;
import javax.naming.NamingEnumeration;
@@ -37,35 +35,23 @@
import javax.naming.directory.SearchResult;
import javax.naming.ldap.InitialLdapContext;
+import org.forgerock.opendj.config.server.ConfigException;
+import org.forgerock.opendj.ldap.ByteStringBuilder;
import org.opends.guitools.controlpanel.browser.BrowserController;
import org.opends.guitools.controlpanel.datamodel.CustomSearchResult;
import org.opends.server.config.ConfigConstants;
-import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.schema.AttributeTypeSyntax;
import org.opends.server.schema.ObjectClassSyntax;
-import org.opends.server.types.AttributeType;
-import org.forgerock.opendj.ldap.ByteStringBuilder;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.InitializationException;
-import org.opends.server.types.ObjectClass;
import org.opends.server.types.Schema;
-/**
- * Class used to retrieve the schema from the schema files.
- */
+/** Class used to retrieve the schema from the schema files. */
public class RemoteSchemaLoader extends SchemaLoader
{
private Schema schema;
/**
- * Constructor.
- */
- public RemoteSchemaLoader()
- {
- super();
- }
-
- /**
* Reads the schema.
*
* @param ctx
@@ -80,21 +66,16 @@
* if an error occurs loading the configuration required to use the
* schema classes.
*/
- public void readSchema(InitialLdapContext ctx) throws NamingException,
- DirectoryException, InitializationException, ConfigException
+ public void readSchema(InitialLdapContext ctx) throws NamingException, DirectoryException, InitializationException,
+ ConfigException
{
- final String[] schemaAttrs =
- { ConfigConstants.ATTR_ATTRIBUTE_TYPES_LC,
- ConfigConstants.ATTR_OBJECTCLASSES_LC };
+ final String[] schemaAttrs = { ConfigConstants.ATTR_ATTRIBUTE_TYPES_LC, ConfigConstants.ATTR_OBJECTCLASSES_LC };
final SearchControls searchControls = new SearchControls();
searchControls.setSearchScope(SearchControls.OBJECT_SCOPE);
searchControls.setReturningAttributes(schemaAttrs);
-
- final String filter = BrowserController.ALL_OBJECTS_FILTER;
- final NamingEnumeration<SearchResult> srs =
- ctx.search(ConfigConstants.DN_DEFAULT_SCHEMA_ROOT, filter,
- searchControls);
+ final NamingEnumeration<SearchResult> srs = ctx.search(
+ ConfigConstants.DN_DEFAULT_SCHEMA_ROOT, BrowserController.ALL_OBJECTS_FILTER, searchControls);
SearchResult sr = null;
try
{
@@ -107,48 +88,38 @@
{
srs.close();
}
- final CustomSearchResult csr =
- new CustomSearchResult(sr, ConfigConstants.DN_DEFAULT_SCHEMA_ROOT);
+ final CustomSearchResult csr = new CustomSearchResult(sr, ConfigConstants.DN_DEFAULT_SCHEMA_ROOT);
schema = getBaseSchema();
-
for (final String str : schemaAttrs)
{
registerSchemaAttr(csr, str);
}
}
- private void registerSchemaAttr(final CustomSearchResult csr,
- final String schemaAttr) throws DirectoryException
+ private void registerSchemaAttr(final CustomSearchResult csr, final String schemaAttr) throws DirectoryException
{
- @SuppressWarnings({ "unchecked", "rawtypes" })
- final Set<String> remainingAttrs =
- new HashSet<String>((List) csr.getAttributeValues(schemaAttr));
+ final Set<Object> remainingAttrs = new HashSet<>(csr.getAttributeValues(schemaAttr));
while (!remainingAttrs.isEmpty())
{
DirectoryException lastException = null;
- boolean oneRegistered = false;
- Set<String> registered = new HashSet<String>();
- for (final String definition : remainingAttrs)
+ final Set<Object> registered = new HashSet<>();
+ for (final Object definition : remainingAttrs)
{
final ByteStringBuilder sb = new ByteStringBuilder();
sb.append(definition);
try
{
- if (schemaAttr.equals(ConfigConstants.ATTR_ATTRIBUTE_TYPES_LC))
+ switch (schemaAttr)
{
- final AttributeType attrType =
- AttributeTypeSyntax.decodeAttributeType(sb, schema, false);
- schema.registerAttributeType(attrType, true);
+ case ConfigConstants.ATTR_ATTRIBUTE_TYPES_LC:
+ schema.registerAttributeType(AttributeTypeSyntax.decodeAttributeType(sb, schema, false), true);
+ break;
+ case ConfigConstants.ATTR_OBJECTCLASSES_LC:
+ schema.registerObjectClass(ObjectClassSyntax.decodeObjectClass(sb, schema, false), true);
+ break;
}
- else if (schemaAttr.equals(ConfigConstants.ATTR_OBJECTCLASSES_LC))
- {
- final ObjectClass oc =
- ObjectClassSyntax.decodeObjectClass(sb, schema, false);
- schema.registerObjectClass(oc, true);
- }
- oneRegistered = true;
registered.add(definition);
}
catch (DirectoryException de)
@@ -156,7 +127,7 @@
lastException = de;
}
}
- if (!oneRegistered)
+ if (registered.isEmpty())
{
throw lastException;
}
diff --git a/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/SchemaLoader.java b/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/SchemaLoader.java
index bb7e11d..d85a2df 100644
--- a/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/SchemaLoader.java
+++ b/opendj-sdk/opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/util/SchemaLoader.java
@@ -24,7 +24,6 @@
* Copyright 2008-2010 Sun Microsystems, Inc.
* Portions Copyright 2013-2015 ForgeRock AS.
*/
-
package org.opends.guitools.controlpanel.util;
import static org.opends.messages.ConfigMessages.*;
@@ -33,6 +32,7 @@
import java.io.FileFilter;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.List;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.ldap.schema.Syntax;
@@ -41,43 +41,38 @@
import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.SchemaConfigManager;
+import org.opends.server.schema.SchemaConstants;
import org.opends.server.types.AttributeType;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.InitializationException;
import org.opends.server.types.ObjectClass;
import org.opends.server.types.Schema;
+
import com.forgerock.opendj.util.OperatingSystem;
-/**
- * Class used to retrieve the schema from the schema files.
- */
+/** Class used to retrieve the schema from the schema files. */
public class SchemaLoader
{
private Schema schema;
- private final String[] attrsToKeep = {
+ private static final String[] ATTRIBUTES_TO_KEEP = {
ConfigConstants.ATTR_ATTRIBUTE_TYPES_LC,
ConfigConstants.ATTR_OBJECTCLASSES_LC,
ConfigConstants.ATTR_NAME_FORMS_LC,
ConfigConstants.ATTR_DIT_CONTENT_RULES_LC,
ConfigConstants.ATTR_DIT_STRUCTURE_RULES_LC,
ConfigConstants.ATTR_MATCHING_RULE_USE_LC };
- private final String[] ocsToKeep = { "top" };
+ private static final String[] OBJECTCLASS_TO_KEEP = { SchemaConstants.TOP_OBJECTCLASS_NAME };
- private final ArrayList<ObjectClass> objectclassesToKeep =
- new ArrayList<ObjectClass>();
- private final ArrayList<AttributeType> attributesToKeep =
- new ArrayList<AttributeType>();
- private final ArrayList<MatchingRule> matchingRulesToKeep =
- new ArrayList<MatchingRule>();
- private final ArrayList<Syntax> syntaxesToKeep = new ArrayList<>();
+ private final List<ObjectClass> objectclassesToKeep = new ArrayList<>();
+ private final List<AttributeType> attributesToKeep = new ArrayList<>();
+ private final List<MatchingRule> matchingRulesToKeep = new ArrayList<>();
+ private final List<Syntax> syntaxesToKeep = new ArrayList<>();
- /**
- * Constructor.
- */
+ /** Constructor. */
public SchemaLoader()
{
Schema sc = DirectoryServer.getSchema();
- for (String name : ocsToKeep)
+ for (String name : OBJECTCLASS_TO_KEEP)
{
ObjectClass oc = sc.getObjectClass(name.toLowerCase());
if (oc != null)
@@ -85,7 +80,7 @@
objectclassesToKeep.add(oc);
}
}
- for (String name : attrsToKeep)
+ for (String name : ATTRIBUTES_TO_KEEP)
{
AttributeType attr = sc.getAttributeType(name.toLowerCase());
if (attr != null)
@@ -99,16 +94,8 @@
private static String getSchemaDirectoryPath()
{
- File schemaDir =
- DirectoryServer.getEnvironmentConfig().getSchemaDirectory();
- if (schemaDir != null)
- {
- return schemaDir.getAbsolutePath();
- }
- else
- {
- return null;
- }
+ File schemaDir = DirectoryServer.getEnvironmentConfig().getSchemaDirectory();
+ return schemaDir != null ? schemaDir.getAbsolutePath() : null;
}
/**
@@ -121,8 +108,7 @@
* @throws DirectoryException
* if there is an error registering the minimal objectclasses.
*/
- public void readSchema() throws DirectoryException, ConfigException,
- InitializationException
+ public void readSchema() throws DirectoryException, ConfigException, InitializationException
{
schema = getBaseSchema();
@@ -139,39 +125,28 @@
}
else if (!schemaDir.isDirectory())
{
- LocalizableMessage message =
- ERR_CONFIG_SCHEMA_DIR_NOT_DIRECTORY.get(schemaDirPath);
+ LocalizableMessage message = ERR_CONFIG_SCHEMA_DIR_NOT_DIRECTORY.get(schemaDirPath);
throw new InitializationException(message);
}
- FileFilter ldifFiles = new FileFilter()
+ FileFilter ldifFilesFilter = new FileFilter()
{
- /** {@inheritDoc} */
@Override
public boolean accept(File f)
{
- boolean accept = false;
if (f != null)
{
if (f.isDirectory())
{
- accept = true;
+ return true;
}
- else if (OperatingSystem.isWindows())
- {
- accept = f.getName().toLowerCase().endsWith(".ldif");
- }
- else
- {
- accept = f.getName().endsWith(".ldif");
- }
+ return OperatingSystem.isWindows() ? f.getName().toLowerCase().endsWith(".ldif")
+ : f.getName().endsWith(".ldif");
}
- return accept;
+ return false;
}
};
- File[] schemaFiles = schemaDir.listFiles(ldifFiles);
- int size = schemaFiles.length;
-
- ArrayList<String> fileList = new ArrayList<String>(size);
+ File[] schemaFiles = schemaDir.listFiles(ldifFilesFilter);
+ List<String> fileList = new ArrayList<>(schemaFiles.length);
for (File f : schemaFiles)
{
if (f.isFile())
@@ -184,16 +159,9 @@
fileList.toArray(fileNames);
Arrays.sort(fileNames);
}
- catch (InitializationException ie)
- {
- throw ie;
- }
catch (Exception e)
{
- LocalizableMessage message =
- ERR_CONFIG_SCHEMA_CANNOT_LIST_FILES
- .get(schemaDirPath, e.getMessage());
- throw new InitializationException(message, e);
+ throw new InitializationException(ERR_CONFIG_SCHEMA_CANNOT_LIST_FILES.get(schemaDirPath, e.getMessage()), e);
}
// Iterate through the schema files and read them as an LDIF file
--
Gitblit v1.10.0