From c92489ed03500e541111e4d5485fef3f979d77b8 Mon Sep 17 00:00:00 2001
From: Ludovic Poitou <ludovic.poitou@forgerock.com>
Date: Fri, 12 Apr 2013 09:51:12 +0000
Subject: [PATCH] Minor refactoring to avoid code duplication.
---
opendj-sdk/opends/src/server/org/opends/server/types/Schema.java | 165 ++++++++++++++++++++++++++----------------------------
1 files changed, 79 insertions(+), 86 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/types/Schema.java b/opendj-sdk/opends/src/server/org/opends/server/types/Schema.java
index f28b5bd..9cba4f5 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/types/Schema.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/types/Schema.java
@@ -3641,49 +3641,9 @@
continue;
}
- String value;
- String lowerLine = toLowerCase(line);
- if (lowerLine.startsWith(ATTR_ATTRIBUTE_TYPES_LC))
- {
- value = line.substring(
- ATTR_ATTRIBUTE_TYPES.length()+1).trim();
- attributeTypes.add(value);
- }
- else if (lowerLine.startsWith(ATTR_OBJECTCLASSES_LC))
- {
- value = line.substring(
- ATTR_OBJECTCLASSES.length()+1).trim();
- objectClasses.add(value);
- }
- else if (lowerLine.startsWith(ATTR_NAME_FORMS_LC))
- {
- value = line.substring(ATTR_NAME_FORMS.length()+1).trim();
- nameForms.add(value);
- }
- else if (lowerLine.startsWith(ATTR_DIT_CONTENT_RULES_LC))
- {
- value = line.substring(
- ATTR_DIT_CONTENT_RULES.length()+1).trim();
- ditContentRules.add(value);
- }
- else if (lowerLine.startsWith(ATTR_DIT_STRUCTURE_RULES_LC))
- {
- value = line.substring(
- ATTR_DIT_STRUCTURE_RULES.length()+1).trim();
- ditStructureRules.add(value);
- }
- else if (lowerLine.startsWith(ATTR_MATCHING_RULE_USE_LC))
- {
- value = line.substring(
- ATTR_MATCHING_RULE_USE.length()+1).trim();
- matchingRuleUses.add(value);
- }
- else if(lowerLine.startsWith(ATTR_LDAP_SYNTAXES_LC))
- {
- value = line.substring(
- ATTR_LDAP_SYNTAXES.length()+1).trim();
- ldapSyntaxes.add(value);
- }
+ parseSchemaLine(line, attributeTypes, objectClasses,
+ nameForms, ditContentRules, ditStructureRules, matchingRuleUses,
+ ldapSyntaxes);
}
}
}
@@ -3740,55 +3700,88 @@
{
break;
}
-
- String value;
- String lowerLine = toLowerCase(line);
- if (lowerLine.startsWith(ATTR_ATTRIBUTE_TYPES_LC))
- {
- value =
- line.substring(ATTR_ATTRIBUTE_TYPES.length()+1).trim();
- attributeTypes.add(value);
- }
- else if (lowerLine.startsWith(ATTR_OBJECTCLASSES_LC))
- {
- value = line.substring(ATTR_OBJECTCLASSES.length()+1).trim();
- objectClasses.add(value);
- }
- else if (lowerLine.startsWith(ATTR_NAME_FORMS_LC))
- {
- value = line.substring(ATTR_NAME_FORMS.length()+1).trim();
- nameForms.add(value);
- }
- else if (lowerLine.startsWith(ATTR_DIT_CONTENT_RULES_LC))
- {
- value = line.substring(
- ATTR_DIT_CONTENT_RULES.length()+1).trim();
- ditContentRules.add(value);
- }
- else if (lowerLine.startsWith(ATTR_DIT_STRUCTURE_RULES_LC))
- {
- value = line.substring(
- ATTR_DIT_STRUCTURE_RULES.length()+1).trim();
- ditStructureRules.add(value);
- }
- else if (lowerLine.startsWith(ATTR_MATCHING_RULE_USE_LC))
- {
- value = line.substring(
- ATTR_MATCHING_RULE_USE.length()+1).trim();
- matchingRuleUses.add(value);
- }
- else if (lowerLine.startsWith(ATTR_LDAP_SYNTAXES_LC))
- {
- value = line.substring(
- ATTR_LDAP_SYNTAXES.length()+1).trim();
- ldapSyntaxes.add(value);
- }
+ parseSchemaLine(line, attributeTypes, objectClasses,
+ nameForms, ditContentRules, ditStructureRules, matchingRuleUses,
+ ldapSyntaxes);
}
reader.close();
}
+ /**
+ * Parse a line of a schema file into the provided sets.
+ *
+ * @param line The current line of schema.
+ * @param attributeTypes The set into which to place the
+ * attribute type if the line represents
+ * one.
+ * @param objectClasses The set into which to place the object
+ * class if the line represents one.
+ * @param nameForms The set into which to place the name
+ * form if the line represents one.
+ * @param ditContentRules The set into which to place the DIT
+ * content rule if the line represents one.
+ * @param ditStructureRules The set into which to place the DIT
+ * structure rule if the line represents one.
+ * @param matchingRuleUses The set into which to place the
+ * matching rule use if the line represents
+ * one.
+ * @param ldapSyntaxes The set into which to place the ldap
+ * syntax if the line represents one.
+ */
+ private static void parseSchemaLine(String line,
+ LinkedHashSet<String> attributeTypes,
+ LinkedHashSet<String> objectClasses,
+ LinkedHashSet<String> nameForms,
+ LinkedHashSet<String> ditContentRules,
+ LinkedHashSet<String> ditStructureRules,
+ LinkedHashSet<String> matchingRuleUses,
+ LinkedHashSet<String> ldapSyntaxes)
+ {
+ String value;
+ String lowerLine = toLowerCase(line);
+ if (lowerLine.startsWith(ATTR_ATTRIBUTE_TYPES_LC))
+ {
+ value =
+ line.substring(ATTR_ATTRIBUTE_TYPES.length()+1).trim();
+ attributeTypes.add(value);
+ }
+ else if (lowerLine.startsWith(ATTR_OBJECTCLASSES_LC))
+ {
+ value = line.substring(ATTR_OBJECTCLASSES.length()+1).trim();
+ objectClasses.add(value);
+ }
+ else if (lowerLine.startsWith(ATTR_NAME_FORMS_LC))
+ {
+ value = line.substring(ATTR_NAME_FORMS.length()+1).trim();
+ nameForms.add(value);
+ }
+ else if (lowerLine.startsWith(ATTR_DIT_CONTENT_RULES_LC))
+ {
+ value = line.substring(
+ ATTR_DIT_CONTENT_RULES.length()+1).trim();
+ ditContentRules.add(value);
+ }
+ else if (lowerLine.startsWith(ATTR_DIT_STRUCTURE_RULES_LC))
+ {
+ value = line.substring(
+ ATTR_DIT_STRUCTURE_RULES.length()+1).trim();
+ ditStructureRules.add(value);
+ }
+ else if (lowerLine.startsWith(ATTR_MATCHING_RULE_USE_LC))
+ {
+ value = line.substring(
+ ATTR_MATCHING_RULE_USE.length()+1).trim();
+ matchingRuleUses.add(value);
+ }
+ else if (lowerLine.startsWith(ATTR_LDAP_SYNTAXES_LC))
+ {
+ value = line.substring(
+ ATTR_LDAP_SYNTAXES.length()+1).trim();
+ ldapSyntaxes.add(value);
+ }
+ }
/**
* Compares the provided sets of schema element definitions and
--
Gitblit v1.10.0