You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2009/11/22 23:37:26 UTC
svn commit: r883164 -
/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/
Author: elecharny
Date: Sun Nov 22 22:37:25 2009
New Revision: 883164
URL: http://svn.apache.org/viewvc?rev=883164&view=rev
Log:
o Added a clear() method in all the SchemaObject
o Removed the schemaManager field in SchemaObject
o Added a SchemaManager field in Comparator and SyntaxChecker
o Added some missing Javadoc
Modified:
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITContentRule.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITStructureRule.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapComparator.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapSyntax.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRule.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRuleUse.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/NameForm.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/Normalizer.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/ObjectClass.java
directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/SchemaObject.java
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITContentRule.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITContentRule.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITContentRule.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITContentRule.java Sun Nov 22 22:37:25 2009
@@ -621,4 +621,24 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ auxObjectClasses.clear();
+ auxObjectClassOids.clear();
+ mayAttributeTypes.clear();
+ mayAttributeTypeOids.clear();
+ mustAttributeTypes.clear();
+ mustAttributeTypeOids.clear();
+ notAttributeTypes.clear();
+ notAttributeTypeOids.clear();
+ }
}
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITStructureRule.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITStructureRule.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITStructureRule.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/DITStructureRule.java Sun Nov 22 22:37:25 2009
@@ -227,4 +227,17 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ superRules.clear();
+ }
}
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapComparator.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapComparator.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapComparator.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapComparator.java Sun Nov 22 22:37:25 2009
@@ -47,13 +47,25 @@
/**
* Create a new instance of a Comparator when the OID is not known until
* after instantiation.
- */
+ *
protected LdapComparator()
{
super( SchemaObjectType.COMPARATOR );
}
+
+ /**
+ * Store the SchemaManager in this instance. It may be necessary for some
+ * comparator which needs to have access to the oidNormalizer Map.
+ *
+ * @param schemaManager the schemaManager to store
+ */
+ public void setSchemaManager( SchemaManager schemaManager )
+ {
+ // Do nothing (general case).
+ }
+
/**
* @see Object#toString()
*/
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapSyntax.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapSyntax.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapSyntax.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/LdapSyntax.java Sun Nov 22 22:37:25 2009
@@ -229,4 +229,17 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ syntaxChecker = null;
+ }
}
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRule.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRule.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRule.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRule.java Sun Nov 22 22:37:25 2009
@@ -325,4 +325,19 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ ldapComparator = null;
+ ldapSyntax = null;
+ normalizer = null;
+ }
}
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRuleUse.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRuleUse.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRuleUse.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/MatchingRuleUse.java Sun Nov 22 22:37:25 2009
@@ -255,4 +255,18 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ applicableAttributes.clear();
+ applicableAttributeOids.clear();
+ }
}
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/NameForm.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/NameForm.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/NameForm.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/NameForm.java Sun Nov 22 22:37:25 2009
@@ -467,4 +467,21 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ mayAttributeTypes.clear();
+ mayAttributeTypeOids.clear();
+ mustAttributeTypes.clear();
+ mustAttributeTypeOids.clear();
+ structuralObjectClass = null;
+ }
}
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/Normalizer.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/Normalizer.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/Normalizer.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/Normalizer.java Sun Nov 22 22:37:25 2009
@@ -88,6 +88,18 @@
// Do nothing. The extended class will store the Registries if needed
}
+
+ /**
+ * Store the SchemaManager in this instance. It may be necessary for some
+ * normalizer which needs to have access to the oidNormalizer Map.
+ *
+ * @param schemaManager the schemaManager to store
+ */
+ public void setSchemaManager( SchemaManager schemaManager )
+ {
+ // Do nothing (general case).
+ }
+
/**
* @see Object#toString()
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/ObjectClass.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/ObjectClass.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/ObjectClass.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/ObjectClass.java Sun Nov 22 22:37:25 2009
@@ -610,4 +610,22 @@
return copy;
}
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public void clear()
+ {
+ // Clear the common elements
+ super.clear();
+
+ // Clear the references
+ mayAttributeTypes.clear();
+ mayAttributeTypeOids.clear();
+ mustAttributeTypes.clear();
+ mustAttributeTypeOids.clear();
+ superiors.clear();
+ superiorOids.clear();
+ }
}
\ No newline at end of file
Modified: directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/SchemaObject.java
URL: http://svn.apache.org/viewvc/directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/SchemaObject.java?rev=883164&r1=883163&r2=883164&view=diff
==============================================================================
--- directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/SchemaObject.java (original)
+++ directory/shared/branches/shared-schema/ldap/src/main/java/org/apache/directory/shared/ldap/schema/SchemaObject.java Sun Nov 22 22:37:25 2009
@@ -106,9 +106,6 @@
/** A map containing the list of supported extensions */
protected Map<String, List<String>> extensions;
- /** A reference to the SchemaManager */
- protected transient SchemaManager schemaManager;
-
/**
* A constructor for a SchemaObject instance. It must be
* invoked by the inherited class.
@@ -710,6 +707,11 @@
}
+ /**
+ * Copy the current SchemaObject on place
+ *
+ * @return The copied SchemaObject
+ */
public abstract SchemaObject copy();
@@ -756,9 +758,6 @@
// The SchemaName
schemaName = original.schemaName;
- // The SchemaManager
- schemaManager = original.schemaManager;
-
// The specification
specification = original.specification;
@@ -767,12 +766,22 @@
/**
- * Sets the SchemaManager
- *
- * @param schemaManager The SchemaManager
+ * Clear the current SchemaObject : remove all the references to other objects,
+ * and all the Maps.
*/
- public void setSchemaManager( SchemaManager schemaManager )
+ public void clear()
{
- this.schemaManager = schemaManager;
+ // Clear the extensions
+ for ( String extension : extensions.keySet() )
+ {
+ List<String> extensionList = extensions.get( extension );
+
+ extensionList.clear();
+ }
+
+ extensions.clear();
+
+ // Clear the names
+ names.clear();
}
}