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 2011/11/15 23:37:12 UTC
svn commit: r1202451 [1/2] - in /directory/apacheds/trunk/core-integ/src:
main/java/org/apache/directory/server/core/integ/
test/java/org/apache/directory/server/core/schema/
Author: elecharny
Date: Tue Nov 15 22:37:11 2011
New Revision: 1202451
URL: http://svn.apache.org/viewvc?rev=1202451&view=rev
Log:
Removed the JNDI imports
Modified:
directory/apacheds/trunk/core-integ/src/main/java/org/apache/directory/server/core/integ/IntegrationUtils.java
directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/AbstractMetaSchemaObjectHandler.java
directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaMatchingRuleHandlerIT.java
directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaNormalizerHandlerIT.java
directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaObjectClassHandlerIT.java
directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaSchemaHandlerIT.java
directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaSyntaxCheckerHandlerIT.java
Modified: directory/apacheds/trunk/core-integ/src/main/java/org/apache/directory/server/core/integ/IntegrationUtils.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core-integ/src/main/java/org/apache/directory/server/core/integ/IntegrationUtils.java?rev=1202451&r1=1202450&r2=1202451&view=diff
==============================================================================
--- directory/apacheds/trunk/core-integ/src/main/java/org/apache/directory/server/core/integ/IntegrationUtils.java (original)
+++ directory/apacheds/trunk/core-integ/src/main/java/org/apache/directory/server/core/integ/IntegrationUtils.java Tue Nov 15 22:37:11 2011
@@ -25,9 +25,6 @@ import java.util.ArrayList;
import java.util.List;
import javax.naming.NamingException;
-import javax.naming.directory.BasicAttribute;
-import javax.naming.directory.DirContext;
-import javax.naming.directory.ModificationItem;
import javax.naming.ldap.LdapContext;
import javax.naming.ldap.LdapName;
@@ -48,6 +45,9 @@ import org.apache.directory.shared.ldap.
import org.apache.directory.shared.ldap.model.entry.Attribute;
import org.apache.directory.shared.ldap.model.entry.DefaultAttribute;
import org.apache.directory.shared.ldap.model.entry.DefaultEntry;
+import org.apache.directory.shared.ldap.model.entry.DefaultModification;
+import org.apache.directory.shared.ldap.model.entry.Modification;
+import org.apache.directory.shared.ldap.model.entry.ModificationOperation;
import org.apache.directory.shared.ldap.model.exception.LdapException;
import org.apache.directory.shared.ldap.model.ldif.ChangeType;
import org.apache.directory.shared.ldap.model.ldif.LdifEntry;
@@ -301,25 +301,24 @@ public class IntegrationUtils
public static void enableSchema( DirectoryService service, String schemaName ) throws Exception
{
- LdapContext schemaRoot = getSchemaContext( service );
+ LdapConnection connection = getAdminConnection( service );
// now enable the test schema
- ModificationItem[] mods = new ModificationItem[1];
- javax.naming.directory.Attribute attr = new BasicAttribute( "m-disabled", "FALSE" );
- mods[0] = new ModificationItem( DirContext.REPLACE_ATTRIBUTE, attr );
- schemaRoot.modifyAttributes( "cn=" + schemaName, mods );
+ connection.modify( "cn=" + schemaName + ",ou=schema",
+ new DefaultModification(
+ ModificationOperation.REPLACE_ATTRIBUTE, "m-disabled", "FALSE" ) );
}
public static void disableSchema( DirectoryService service, String schemaName ) throws Exception
{
- LdapContext schemaRoot = getSchemaContext( service );
+ LdapConnection connection = getAdminConnection( service );
// now enable the test schema
- ModificationItem[] mods = new ModificationItem[1];
- javax.naming.directory.Attribute attr = new BasicAttribute( "m-disabled", "TRUE" );
- mods[0] = new ModificationItem( DirContext.REPLACE_ATTRIBUTE, attr );
- schemaRoot.modifyAttributes( "cn=" + schemaName, mods );
+ Modification mod = new DefaultModification(
+ ModificationOperation.REPLACE_ATTRIBUTE, "m-disabled", "TRUE" );
+
+ connection.modify( "cn=" + schemaName + ",ou=schema", mod );
}
Modified: directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/AbstractMetaSchemaObjectHandler.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/AbstractMetaSchemaObjectHandler.java?rev=1202451&r1=1202450&r2=1202451&view=diff
==============================================================================
--- directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/AbstractMetaSchemaObjectHandler.java (original)
+++ directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/AbstractMetaSchemaObjectHandler.java Tue Nov 15 22:37:11 2011
@@ -67,29 +67,6 @@ public abstract class AbstractMetaSchema
/**
- * Get the path on disk where a specific SchemaObject is stored
- *
- * @param dn the SchemaObject Dn
- */
- protected String getSchemaPath0( Dn dn )
- {
- StringBuilder sb = new StringBuilder();
-
- sb.append( workingDir ).append( '/' ).append( getService().getSchemaPartition().getId() ).append( '/' ).append( "ou=schema" );
-
- for ( Rdn rdn : dn )
- {
- sb.append( '/' );
- sb.append( Strings.toLowerCase( rdn.getName() ) );
- }
-
- sb.append( ".ldif" );
-
- return sb.toString();
- }
-
-
- /**
* Check that a specific SchemaObject is stored on the disk at the
* correct position in the Ldif partition
*
@@ -108,24 +85,6 @@ public abstract class AbstractMetaSchema
/**
- * Check that a specific SchemaObject is stored on the disk at the
- * correct position in the Ldif partition
- *
- * @param dn The SchemaObject Dn
- */
- protected boolean isOnDisk0( Dn dn )
- {
- // do not change the value of getSchemaPath to lowercase
- // on Linux this gives a wrong path
- String schemaObjectFileName = getSchemaPath0( dn );
-
- File file = new File( schemaObjectFileName );
-
- return file.exists();
- }
-
-
- /**
* Gets relative Dn to ou=schema.
*
* @param schemaName the name of the schema
@@ -136,57 +95,4 @@ public abstract class AbstractMetaSchema
{
return new Dn( "cn=" + schemaName );
}
-
-
- /**
- * Get relative Dn to ou=schema for MatchingRules
- *
- * @param schemaName the name of the schema
- * @return the dn to the ou under which MatchingRules are found for a schema
- * @throws Exception if there are dn construction issues
- */
- protected Dn getMatchingRuleContainer( String schemaName ) throws Exception
- {
- return new Dn( "ou=matchingRules,cn=" + schemaName );
- }
-
-
- /**
- * Gets relative Dn to ou=schema.
- *
- * @param schemaName the name of the schema
- * @return the dn of the container which contains objectClasses
- * @throws Exception on error
- */
- protected Dn getObjectClassContainer( String schemaName ) throws Exception
- {
- return new Dn( "ou=objectClasses,cn=" + schemaName );
- }
-
-
-
- /**
- * Get relative Dn to ou=schema for Syntaxes
- *
- * @param schemaName the name of the schema
- * @return the dn of the container holding syntaxes for the schema
- * @throws Exception on dn parse errors
- */
- protected Dn getSyntaxContainer( String schemaName ) throws Exception
- {
- return new Dn( "ou=syntaxes,cn=" + schemaName );
- }
-
-
- /**
- * Get relative Dn to ou=schema for SyntaxCheckers
- *
- * @param schemaName the name of the schema
- * @return the dn of the container holding syntax checkers for the schema
- * @throws Exception on dn parse errors
- */
- protected Dn getSyntaxCheckerContainer( String schemaName ) throws Exception
- {
- return new Dn( "ou=syntaxCheckers,cn=" + schemaName );
- }
}
Modified: directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaMatchingRuleHandlerIT.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaMatchingRuleHandlerIT.java?rev=1202451&r1=1202450&r2=1202451&view=diff
==============================================================================
--- directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaMatchingRuleHandlerIT.java (original)
+++ directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaMatchingRuleHandlerIT.java Tue Nov 15 22:37:11 2011
@@ -65,7 +65,6 @@ public class MetaMatchingRuleHandlerIT e
private static final String OID = "1.3.6.1.4.1.18060.0.4.0.1.100000";
private static final String NEW_OID = "1.3.6.1.4.1.18060.0.4.0.1.100001";
-
public static SchemaManager schemaManager;
private static LdapConnection connection;
Modified: directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaNormalizerHandlerIT.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaNormalizerHandlerIT.java?rev=1202451&r1=1202450&r2=1202451&view=diff
==============================================================================
--- directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaNormalizerHandlerIT.java (original)
+++ directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaNormalizerHandlerIT.java Tue Nov 15 22:37:11 2011
@@ -418,7 +418,7 @@ public class MetaNormalizerHandlerIT ext
// Create a new Normalizer
testAddNormalizerToEnabledSchema();
assertTrue( isOnDisk( nDn ) );
- assertTrue( getService().getSchemaManager().getNormalizerRegistry().contains( OID ) );
+ assertTrue( schemaManager.getNormalizerRegistry().contains( OID ) );
// Create a MR using this Normalizer
Dn mrDn = new Dn( "m-oid=" + OID + ",ou=matchingrules,cn=apachemeta,ou=schema" );
@@ -434,14 +434,14 @@ public class MetaNormalizerHandlerIT ext
// Pre-checks
assertFalse( isOnDisk( mrDn ) );
- assertFalse( getService().getSchemaManager().getMatchingRuleRegistry().contains( OID ) );
+ assertFalse( schemaManager.getMatchingRuleRegistry().contains( OID ) );
// MatchingRule Addition
connection.add( entry );
// Post-checks
assertTrue( isOnDisk( mrDn ) );
- assertTrue( getService().getSchemaManager().getMatchingRuleRegistry().contains( OID ) );
+ assertTrue( schemaManager.getMatchingRuleRegistry().contains( OID ) );
try
{
Modified: directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaObjectClassHandlerIT.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaObjectClassHandlerIT.java?rev=1202451&r1=1202450&r2=1202451&view=diff
==============================================================================
--- directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaObjectClassHandlerIT.java (original)
+++ directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaObjectClassHandlerIT.java Tue Nov 15 22:37:11 2011
@@ -20,31 +20,27 @@
package org.apache.directory.server.core.schema;
-import static org.apache.directory.server.core.integ.IntegrationUtils.getSchemaContext;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import javax.naming.InvalidNameException;
-import javax.naming.NameNotFoundException;
-import javax.naming.NamingException;
-import javax.naming.OperationNotSupportedException;
-import javax.naming.directory.Attribute;
-import javax.naming.directory.Attributes;
-import javax.naming.directory.BasicAttribute;
-import javax.naming.directory.BasicAttributes;
-import javax.naming.directory.DirContext;
-import javax.naming.directory.ModificationItem;
-
+import org.apache.directory.ldap.client.api.LdapConnection;
import org.apache.directory.server.core.annotations.CreateDS;
import org.apache.directory.server.core.integ.FrameworkRunner;
+import org.apache.directory.server.core.integ.IntegrationUtils;
+import org.apache.directory.shared.ldap.model.entry.DefaultEntry;
+import org.apache.directory.shared.ldap.model.entry.DefaultModification;
+import org.apache.directory.shared.ldap.model.entry.Entry;
+import org.apache.directory.shared.ldap.model.entry.Modification;
+import org.apache.directory.shared.ldap.model.entry.ModificationOperation;
import org.apache.directory.shared.ldap.model.exception.LdapException;
-import org.apache.directory.shared.ldap.model.ldif.LdifUtils;
import org.apache.directory.shared.ldap.model.name.Dn;
+import org.apache.directory.shared.ldap.model.name.Rdn;
import org.apache.directory.shared.ldap.model.schema.ObjectClass;
+import org.apache.directory.shared.ldap.model.schema.SchemaManager;
import org.apache.directory.shared.ldap.model.schema.registries.ObjectClassRegistry;
-import org.apache.directory.shared.ldap.util.JndiUtils;
+import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -72,15 +68,31 @@ public class MetaObjectClassHandlerIT ex
private static final String DEPENDEE_OID = "1.3.6.1.4.1.18060.0.4.0.3.100002";
+
+ public static SchemaManager schemaManager;
+ private static LdapConnection connection;
+
+
+ @Before
+ public void setup() throws Exception
+ {
+ super.init();
+ connection = IntegrationUtils.getAdminConnection( getService() );
+ schemaManager = getService().getSchemaManager();
+ }
+
private static ObjectClassRegistry getObjectClassRegistry()
{
- return getService().getSchemaManager().getObjectClassRegistry();
+ return schemaManager.getObjectClassRegistry();
}
private Dn addObjectClass() throws Exception
{
- Attributes attrs = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass: metaTop",
"objectClass: metaObjectClass",
@@ -91,9 +103,7 @@ public class MetaObjectClassHandlerIT ex
"m-must: cn",
"m-may: ou" );
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
return dn;
}
@@ -109,7 +119,7 @@ public class MetaObjectClassHandlerIT ex
assertTrue( getObjectClassRegistry().contains( OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( OID ), "apachemeta" );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
}
@@ -120,14 +130,17 @@ public class MetaObjectClassHandlerIT ex
assertFalse( "adding new objectClass to disabled schema should not register it into the registries",
getObjectClassRegistry().contains( OID ) );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
}
@Test
public void testAddObjectClassToUnloadedSchema() throws Exception
{
- Attributes attrs = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=notloaded,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass: metaTop",
"objectClass: metaObjectClass",
@@ -138,37 +151,34 @@ public class MetaObjectClassHandlerIT ex
"m-must: cn",
"m-may: ou" );
- Dn dn = getObjectClassContainer( "notloaded" );
- dn = dn.add( "m-oid" + "=" + OID );
-
try
{
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
fail( "Should not be there" );
}
- catch( NameNotFoundException nnfe )
+ catch( LdapException le )
{
// Excpected result
}
assertFalse( "adding new objectClass to disabled schema should not register it into the registries",
getObjectClassRegistry().contains( OID ) );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
}
@Test
public void testDeleteObjectClassFromEnabledSchema() throws Exception
{
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
addObjectClass();
assertTrue( "objectClass should be removed from the registry after being deleted",
getObjectClassRegistry().contains( OID ) );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
- getSchemaContext( getService() ).destroySubcontext( JndiUtils.toName( dn ) );
+ connection.delete( dn );
assertFalse( "objectClass should be removed from the registry after being deleted",
getObjectClassRegistry().contains( OID ) );
@@ -182,22 +192,22 @@ public class MetaObjectClassHandlerIT ex
{
}
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
}
@Test
public void testDeleteObjectClassFromDisabledSchema() throws Exception
{
- Dn dn = getObjectClassContainer( "nis" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=nis,ou=schema" );
+
addObjectClassToDisabledSchema();
assertFalse( "objectClass should be removed from the registry after being deleted",
getObjectClassRegistry().contains( OID ) );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
- getSchemaContext( getService() ).destroySubcontext( JndiUtils.toName( dn ) );
+ connection.delete( dn );
assertFalse( "objectClass should be removed from the registry after being deleted",
getObjectClassRegistry().contains( OID ) );
@@ -211,7 +221,7 @@ public class MetaObjectClassHandlerIT ex
{
}
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
}
@@ -219,13 +229,13 @@ public class MetaObjectClassHandlerIT ex
@Ignore
public void testRenameObjectClassType() throws Exception
{
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=nis,ou=schema" );
+
addObjectClass();
- Dn newdn = getObjectClassContainer( "apachemeta" );
- newdn = newdn.add( "m-oid" + "=" + NEW_OID );
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ Dn newDn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apachemeta,ou=schema" );
+
+ connection.move( dn, newDn );
assertFalse( "old objectClass OID should be removed from the registry after being renamed",
getObjectClassRegistry().contains( OID ) );
@@ -250,13 +260,11 @@ public class MetaObjectClassHandlerIT ex
{
addObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn newdn = getObjectClassContainer( "apache" );
- newdn = newdn.add( "m-oid" + "=" + OID );
+ Dn newDn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apache,ou=schema" );
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
assertTrue( "objectClass OID should still be present",
getObjectClassRegistry().contains( OID ) );
@@ -272,13 +280,11 @@ public class MetaObjectClassHandlerIT ex
{
addObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn newdn = getObjectClassContainer( "apache" );
- newdn = newdn.add( "m-oid" + "=" + NEW_OID );
+ Dn newDn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apache,ou=schema" );
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
assertFalse( "old objectClass OID should NOT be present",
getObjectClassRegistry().contains( OID ) );
@@ -301,15 +307,14 @@ public class MetaObjectClassHandlerIT ex
assertEquals( oc.getDescription(), DESCRIPTION0 );
assertEquals( oc.getName(), NAME );
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- ModificationItem[] mods = new ModificationItem[2];
- Attribute attr = new BasicAttribute( "m-description", DESCRIPTION1 );
- mods[0] = new ModificationItem( DirContext.REPLACE_ATTRIBUTE, attr );
- attr = new BasicAttribute( "m-name", NEW_NAME );
- mods[1] = new ModificationItem( DirContext.REPLACE_ATTRIBUTE, attr );
- getSchemaContext( getService() ).modifyAttributes( JndiUtils.toName( dn ), mods );
+ Modification mod1 = new DefaultModification(
+ ModificationOperation.REPLACE_ATTRIBUTE, "m-description", DESCRIPTION1 );
+ Modification mod2 = new DefaultModification(
+ ModificationOperation.REPLACE_ATTRIBUTE, "m-name", NEW_NAME );
+
+ connection.modify( dn, mod1, mod2 );
assertTrue( "objectClass OID should still be present",
getObjectClassRegistry().contains( OID ) );
@@ -333,13 +338,14 @@ public class MetaObjectClassHandlerIT ex
assertEquals( oc.getDescription(), DESCRIPTION0 );
assertEquals( oc.getName(), NAME );
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Attributes mods = new BasicAttributes( true );
- mods.put( "m-description", DESCRIPTION1 );
- mods.put( "m-name", NEW_NAME );
- getSchemaContext( getService() ).modifyAttributes( JndiUtils.toName( dn ), DirContext.REPLACE_ATTRIBUTE, mods );
+ Modification mod1 = new DefaultModification(
+ ModificationOperation.REPLACE_ATTRIBUTE, "m-description", DESCRIPTION1 );
+ Modification mod2 = new DefaultModification(
+ ModificationOperation.REPLACE_ATTRIBUTE, "m-name", NEW_NAME );
+
+ connection.modify( dn, mod1, mod2 );
assertTrue( "objectClass OID should still be present",
getObjectClassRegistry().contains( OID ) );
@@ -358,22 +364,22 @@ public class MetaObjectClassHandlerIT ex
// ----------------------------------------------------------------------
private void addDependeeObjectClass() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
- attrs.put( "m-oid", DEPENDEE_OID );
- attrs.put( "m-name", DEPENDEE_NAME );
- attrs.put( "m-description", DESCRIPTION0 );
- attrs.put( "m-typeObjectClass", "AUXILIARY" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
- attrs.put( "m-supObjectClass", OID );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + DEPENDEE_OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ Dn dn = new Dn( "m-oid=" + DEPENDEE_OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", DEPENDEE_OID,
+ "m-name", DEPENDEE_NAME,
+ "m-description", DESCRIPTION0,
+ "m-typeObjectClass", "AUXILIARY",
+ "m-must: cn",
+ "m-may: ou",
+ "m-supObjectClass", OID );
+
+ connection.add( entry );
assertTrue( getObjectClassRegistry().contains( DEPENDEE_OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( DEPENDEE_OID ), "apachemeta" );
@@ -383,17 +389,17 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testDeleteObjectClassWhenInUse() throws Exception
{
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
addObjectClass();
addDependeeObjectClass();
try
{
- getSchemaContext( getService() ).destroySubcontext( JndiUtils.toName( dn ) );
+ connection.delete( dn );
fail( "should not be able to delete a objectClass in use" );
}
- catch( OperationNotSupportedException e )
+ catch( LdapException e )
{
}
@@ -409,18 +415,16 @@ public class MetaObjectClassHandlerIT ex
addObjectClass();
addDependeeObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn newdn = getObjectClassContainer( "apache" );
- newdn = newdn.add( "m-oid" + "=" + OID );
+ Dn newDn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apache,ou=schema" );
try
{
- getSchemaContext( getService() ).rename( JndiUtils.toName(dn), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
fail( "should not be able to move a objectClass in use" );
}
- catch( OperationNotSupportedException e )
+ catch( LdapException e )
{
}
@@ -436,18 +440,16 @@ public class MetaObjectClassHandlerIT ex
addObjectClass();
addDependeeObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn newdn = getObjectClassContainer( "apache" );
- newdn = newdn.add( "m-oid" + "=" + NEW_OID );
+ Dn newDn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apache,ou=schema" );
try
{
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
fail( "should not be able to move an objectClass in use" );
}
- catch( OperationNotSupportedException e )
+ catch( LdapException e )
{
}
@@ -460,20 +462,19 @@ public class MetaObjectClassHandlerIT ex
@Ignore
public void testRenameObjectClassWhenInUse() throws Exception
{
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
addObjectClass();
addDependeeObjectClass();
- Dn newdn = getObjectClassContainer( "apachemeta" );
- newdn = newdn.add( "m-oid" + "=" + NEW_OID );
+ Rdn rdn = new Rdn( "m-oid=" + NEW_OID );
try
{
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.rename( dn, rdn );
fail( "should not be able to rename an objectClass in use" );
}
- catch( OperationNotSupportedException e )
+ catch ( LdapException e )
{
}
@@ -491,18 +492,16 @@ public class MetaObjectClassHandlerIT ex
{
addObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn top = new Dn();
- top.add( "m-oid" + "=" + OID );
+ Dn top = new Dn( "m-oid=" + OID );
try
{
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( top ) );
+ connection.move( dn, top );
fail( "should not be able to move a objectClass up to ou=schema" );
}
- catch( InvalidNameException e )
+ catch ( LdapException e )
{
}
@@ -517,18 +516,16 @@ public class MetaObjectClassHandlerIT ex
{
addObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn newdn = new Dn( "ou=comparators,cn=apachemeta" );
- newdn = newdn.add( "m-oid" + "=" + OID );
+ Dn newDn = new Dn( "m-oid=" + OID + ",ou=comparators,cn=apachemeta,ou=schema" );
try
{
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
fail( "should not be able to move a objectClass into comparators container" );
}
- catch( InvalidNameException e )
+ catch( LdapException e )
{
}
@@ -539,7 +536,10 @@ public class MetaObjectClassHandlerIT ex
private Dn addObjectClassToDisabledSchema() throws Exception
{
- Attributes attrs = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=nis,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass: metaTop",
"objectClass: metaObjectClass",
@@ -550,9 +550,7 @@ public class MetaObjectClassHandlerIT ex
"m-must: cn",
"m-may: ou" );
- Dn dn = getObjectClassContainer( "nis" );
- dn = dn.add( "m-oid" + "=" + OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
return dn;
}
@@ -564,14 +562,12 @@ public class MetaObjectClassHandlerIT ex
{
addObjectClass();
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
// nis is inactive by default
- Dn newdn = getObjectClassContainer( "nis" );
- newdn = newdn.add( "m-oid" + "=" + OID );
+ Dn newDn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=nis,ou=schema" );
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
assertFalse( "objectClass OID should no longer be present",
getObjectClassRegistry().contains( OID ) );
@@ -585,16 +581,14 @@ public class MetaObjectClassHandlerIT ex
addObjectClassToDisabledSchema();
// nis is inactive by default
- Dn dn = getObjectClassContainer( "nis" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=nis,ou=schema" );
assertFalse( "objectClass OID should NOT be present when added to disabled nis schema",
getObjectClassRegistry().contains( OID ) );
- Dn newdn = getObjectClassContainer( "apachemeta" );
- newdn = newdn.add( "m-oid" + "=" + OID );
+ Dn newDn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apachemeta,ou=schema" );
- getSchemaContext( getService() ).rename( JndiUtils.toName( dn ), JndiUtils.toName( newdn ) );
+ connection.move( dn, newDn );
assertTrue( "objectClass OID should be present when moved to enabled schema",
getObjectClassRegistry().contains( OID ) );
@@ -602,6 +596,7 @@ public class MetaObjectClassHandlerIT ex
assertEquals( "objectClass should be in apachemeta schema after move",
getObjectClassRegistry().getSchemaName( OID ), "apachemeta" );
}
+
// ----------------------------------------------------------------------
// Let's test the Abstract, Auiliary and Structural inheritence enforcement
@@ -612,23 +607,22 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddAbstractOCinheritingFromAbstractOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "ABSTRACT" );
- attrs.put( "m-supObjectClass", "top" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: ABSTRACT",
+ "m-supObjectClass: top",
+ "m-must: cn",
+ "m-may: ou" );
+
+ connection.add( entry );
assertTrue( getObjectClassRegistry().contains( OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( OID ), "apachemeta" );
@@ -641,33 +635,28 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddAbstractOCinheritingFromAuxiliaryOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "ABSTRACT" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Attribute sup = new BasicAttribute( "m-supObjectClass" );
- sup.add( "top" );
- sup.add( "javaSerializedObject");
- attrs.put( sup );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: ABSTRACT",
+ "m-supObjectClass: top",
+ "m-supObjectClass: javaSerializedObject",
+ "m-must: cn",
+ "m-may: ou" );
try
{
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
fail();
}
- catch ( NamingException ne )
+ catch ( LdapException ne )
{
assertTrue( true );
}
@@ -680,33 +669,28 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddAbstractOCinheritingFromStructuralOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "ABSTRACT" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Attribute sup = new BasicAttribute( "m-supObjectClass" );
- sup.add( "top" );
- sup.add( "person");
- attrs.put( sup );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: ABSTRACT",
+ "m-supObjectClass: top",
+ "m-supObjectClass: person",
+ "m-must: cn",
+ "m-may: ou" );
try
{
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
fail();
}
- catch ( NamingException ne )
+ catch ( LdapException ne )
{
assertTrue( true );
}
@@ -719,23 +703,22 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddAuxiliaryOCinheritingFromAbstractOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", NEW_OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "AUXILIARY" );
- attrs.put( "m-supObjectClass", "top" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + NEW_OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ Dn dn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", NEW_OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: AUXILIARY",
+ "m-supObjectClass: top",
+ "m-must: cn",
+ "m-may: ou" );
+
+ connection.add( entry );
assertTrue( getObjectClassRegistry().contains( NEW_OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( NEW_OID ), "apachemeta" );
@@ -748,27 +731,23 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddAuxiliaryOCinheritingFromAuxiliaryOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", NEW_OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "AUXILIARY" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Attribute sup = new BasicAttribute( "m-supObjectClass" );
- sup.add( "top" );
- sup.add( "javaNamingReference");
- attrs.put( sup );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + NEW_OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ Dn dn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", NEW_OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: AUXILIARY",
+ "m-supObjectClass: top",
+ "m-supObjectClass: javaNamingReference",
+ "m-must: cn",
+ "m-may: ou" );
+
+ connection.add( entry );
assertTrue( getObjectClassRegistry().contains( NEW_OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( NEW_OID ), "apachemeta" );
@@ -781,33 +760,28 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddAuxiliaryOCinheritingFromStructuralOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "ABSTRACT" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Attribute sup = new BasicAttribute( "m-supObjectClass" );
- sup.add( "top" );
- sup.add( "person");
- attrs.put( sup );
+ Dn dn = new Dn( "m-oid=" + OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + OID );
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: ABSTRACT",
+ "m-supObjectClass: top",
+ "m-supObjectClass: person",
+ "m-must: cn",
+ "m-may: ou" );
try
{
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
fail();
}
- catch ( NamingException ne )
+ catch ( LdapException ne )
{
assertTrue( true );
}
@@ -820,23 +794,22 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddStructuralOCinheritingFromAbstractOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", NEW_OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "STRUCTURAL" );
- attrs.put( "m-supObjectClass", "top" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + NEW_OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ Dn dn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", NEW_OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: STRUCTURAL",
+ "m-supObjectClass: top",
+ "m-must: cn",
+ "m-may: ou" );
+
+ connection.add( entry );
assertTrue( getObjectClassRegistry().contains( NEW_OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( NEW_OID ), "apachemeta" );
@@ -849,33 +822,28 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddStructuralOCinheritingFromAuxiliaryOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", NEW_OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "STRUCTURAL" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Attribute sup = new BasicAttribute( "m-supObjectClass" );
- sup.add( "top" );
- sup.add( "javaNamingReference");
- attrs.put( sup );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + NEW_OID );
+ Dn dn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", NEW_OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: STRUCTURAL",
+ "m-supObjectClass: top",
+ "m-supObjectClass: javaNamingReference",
+ "m-must: cn",
+ "m-may: ou" );
try
{
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ connection.add( entry );
fail();
}
- catch ( NamingException ne )
+ catch ( LdapException ne )
{
assertTrue( true );
}
@@ -888,27 +856,23 @@ public class MetaObjectClassHandlerIT ex
@Test
public void testAddStructuralOCinheritingFromStructuralOC() throws Exception
{
- Attributes attrs = new BasicAttributes( true );
- Attribute oc = new BasicAttribute( "objectClass", "top" );
- oc.add( "metaTop" );
- oc.add( "metaObjectClass" );
- attrs.put( oc );
-
- attrs.put( "m-oid", NEW_OID );
- attrs.put( "m-name", "abstractOCtest");
- attrs.put( "m-description", "An abstract oC inheriting from top" );
- attrs.put( "m-typeObjectClass", "STRUCTURAL" );
- attrs.put( "m-must", "cn" );
- attrs.put( "m-may", "ou" );
-
- Attribute sup = new BasicAttribute( "m-supObjectClass" );
- sup.add( "top" );
- sup.add( "person");
- attrs.put( sup );
-
- Dn dn = getObjectClassContainer( "apachemeta" );
- dn = dn.add( "m-oid" + "=" + NEW_OID );
- getSchemaContext( getService() ).createSubcontext( JndiUtils.toName( dn ), attrs );
+ Dn dn = new Dn( "m-oid=" + NEW_OID + ",ou=objectClasses,cn=apacheMeta,ou=schema" );
+
+ Entry entry = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass: metaTop",
+ "objectClass: metaObjectClass",
+ "m-oid", NEW_OID,
+ "m-name: abstractOCtest",
+ "m-description: An abstract oC inheriting from top",
+ "m-typeObjectClass: STRUCTURAL",
+ "m-supObjectClass: top",
+ "m-supObjectClass: person",
+ "m-must: cn",
+ "m-may: ou" );
+
+ connection.add( entry );
assertTrue( getObjectClassRegistry().contains( NEW_OID ) );
assertEquals( getObjectClassRegistry().getSchemaName( NEW_OID ), "apachemeta" );
Modified: directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaSchemaHandlerIT.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaSchemaHandlerIT.java?rev=1202451&r1=1202450&r2=1202451&view=diff
==============================================================================
--- directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaSchemaHandlerIT.java (original)
+++ directory/apacheds/trunk/core-integ/src/test/java/org/apache/directory/server/core/schema/MetaSchemaHandlerIT.java Tue Nov 15 22:37:11 2011
@@ -20,30 +20,26 @@
package org.apache.directory.server.core.schema;
-import static org.apache.directory.server.core.integ.IntegrationUtils.getSchemaContext;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import javax.naming.NameNotFoundException;
-import javax.naming.NamingException;
-import javax.naming.OperationNotSupportedException;
-import javax.naming.directory.Attribute;
-import javax.naming.directory.Attributes;
-import javax.naming.directory.BasicAttribute;
-import javax.naming.directory.DirContext;
-import javax.naming.directory.ModificationItem;
-import javax.naming.ldap.LdapContext;
-
+import org.apache.directory.ldap.client.api.LdapConnection;
import org.apache.directory.server.core.annotations.CreateDS;
import org.apache.directory.server.core.integ.FrameworkRunner;
import org.apache.directory.server.core.integ.IntegrationUtils;
import org.apache.directory.shared.ldap.model.constants.MetaSchemaConstants;
import org.apache.directory.shared.ldap.model.constants.SchemaConstants;
-import org.apache.directory.shared.ldap.model.ldif.LdifUtils;
+import org.apache.directory.shared.ldap.model.entry.Attribute;
+import org.apache.directory.shared.ldap.model.entry.DefaultEntry;
+import org.apache.directory.shared.ldap.model.entry.DefaultModification;
+import org.apache.directory.shared.ldap.model.entry.Entry;
+import org.apache.directory.shared.ldap.model.entry.ModificationOperation;
+import org.apache.directory.shared.ldap.model.exception.LdapException;
import org.apache.directory.shared.ldap.model.name.Dn;
+import org.apache.directory.shared.ldap.model.schema.SchemaManager;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
@@ -104,19 +100,24 @@ public class MetaSchemaHandlerIT extends
/** Another test attribute : krb5principalName taken from the Krb5Kdc schema */
private static final String KRB5_PRINCIPAL_NAME_ATTR = "krb5PrincipalName";
+ public static SchemaManager schemaManager;
+ private static LdapConnection connection;
+
@Before
- public void checkSambaSchema() throws Exception
+ public void setup() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
+ super.init();
+ connection = IntegrationUtils.getAdminConnection( getService() );
+ schemaManager = getService().getSchemaManager();
// check that there is a samba schema installed and that is is disabled
- Attributes attributes = schemaRoot.getAttributes( "cn=samba" );
- assertNotNull( attributes );
- assertTrue( attributes.get( MetaSchemaConstants.M_DISABLED_AT ).contains( "TRUE" ) );
- attributes = schemaRoot.getAttributes( "ou=attributeTypes,cn=samba" );
- assertNotNull( attributes );
- assertTrue( attributes.get( SchemaConstants.OU_AT ).contains( "attributetypes" ) );
+ Entry entry = connection.lookup( "cn=samba,ou=schema" );
+ assertNotNull( entry );
+ assertTrue( entry.get( MetaSchemaConstants.M_DISABLED_AT ).contains( "TRUE" ) );
+ entry = connection.lookup( "ou=attributeTypes,cn=samba,ou=schema" );
+ assertNotNull( entry );
+ assertTrue( entry.get( SchemaConstants.OU_AT ).contains( "attributetypes" ) );
// Disable the NIS schema
IntegrationUtils.disableSchema( getService(), "nis" );
@@ -125,30 +126,32 @@ public class MetaSchemaHandlerIT extends
private void createDisabledBrokenSchema() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
-
+ Dn dn = new Dn( "cn=broken,ou=schema" );
+
// Create the schema
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: broken",
MetaSchemaConstants.M_DISABLED_AT, "TRUE" );
- schemaRoot.createSubcontext( "cn=broken", dummySchema );
+ connection.add( dummySchema );
}
private void createEnabledValidSchema( String schemaName ) throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
+ Dn dn = new Dn( "cn=" + schemaName + ",ou=schema" );
// Create the schema
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Entry entry = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn", schemaName );
- schemaRoot.createSubcontext( "cn=" + schemaName, dummySchema );
+ connection.add( entry );
}
// -----------------------------------------------------------------------
@@ -172,7 +175,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure an attribute from that schema is
// not in the AttributeTypeRegistry
- assertFalse( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertFalse( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
// now enable the test schema
IntegrationUtils.enableSchema( getService(), "nis" );
@@ -182,7 +185,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure the test attribute from the
// test schema is now loaded and present within the attr registry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
}
@@ -203,7 +206,7 @@ public class MetaSchemaHandlerIT extends
IntegrationUtils.enableSchema( getService(), "wrong" );
fail();
}
- catch ( NameNotFoundException lnnfe )
+ catch ( LdapException lnnfe )
{
// Expected
assertTrue( true );
@@ -231,7 +234,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure an attribute from that schema is
// not in the AttributeTypeRegistry
- assertFalse( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertFalse( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
// now enable the test schema
IntegrationUtils.enableSchema( getService(), "nis" );
@@ -244,7 +247,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure the test attribute from the
// test schema is now loaded and present within the attr registry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
}
@@ -282,7 +285,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure an attribute from that schema is
// in the AttributeTypeRegistry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( KRB5_PRINCIPAL_NAME_ATTR ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( KRB5_PRINCIPAL_NAME_ATTR ) );
// now disable the krb5kdc schema
IntegrationUtils.disableSchema( getService(), "krb5kdc" );
@@ -292,7 +295,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure the test attribute from the
// test schema is now loaded and present within the attr registry
- assertFalse( getService().getSchemaManager().getAttributeTypeRegistry().contains( KRB5_PRINCIPAL_NAME_ATTR ) );
+ assertFalse( schemaManager.getAttributeTypeRegistry().contains( KRB5_PRINCIPAL_NAME_ATTR ) );
}
@@ -313,7 +316,7 @@ public class MetaSchemaHandlerIT extends
IntegrationUtils.disableSchema( getService(), "wrong" );
fail();
}
- catch ( NameNotFoundException lnnfe )
+ catch ( LdapException lnnfe )
{
// Expected
assertTrue( true );
@@ -334,14 +337,14 @@ public class MetaSchemaHandlerIT extends
public void testDisableSchemaAlreadyDisabled() throws Exception
{
// check that the nis schema is loaded
- assertTrue( IntegrationUtils.isLoaded( getService(), "nis" ) );
+ assertTrue( IntegrationUtils.isLoaded( getService(), "nis" ) );
// Check that it's not enabled
assertTrue( IntegrationUtils.isDisabled( getService(), "nis" ) );
// double check and make sure an attribute from that schema is
// not in the AttributeTypeRegistry
- assertFalse( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertFalse( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
// now disable the test schema again
IntegrationUtils.disableSchema( getService(), "nis" );
@@ -351,7 +354,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure the test attribute from the
// test schema is not loaded and present within the attr registry
- assertFalse( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertFalse( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
}
@@ -372,7 +375,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure an attribute from that schema is
// in the AttributeTypeRegistry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( "cn" ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( "cn" ) );
// now disable the system schema : it should break the registries, thus being rejected
IntegrationUtils.disableSchema( getService(), "system" );
@@ -382,7 +385,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure the test attribute from the
// test schema is loaded and present within the attr registry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( "cn" ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( "cn" ) );
}
// -----------------------------------------------------------------------
@@ -394,18 +397,16 @@ public class MetaSchemaHandlerIT extends
@Test
public void testAddEnabledValidSchema() throws Exception
{
- Dn dn = getSchemaContainer( "dummy" );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
- LdapContext schemaRoot = getSchemaContext( getService() );
-
createEnabledValidSchema( "dummy" );
assertTrue( IntegrationUtils.isEnabled( getService(), "dummy" ) );
- assertNotNull( schemaRoot.lookup( "cn=dummy" ) );
+ assertNotNull( connection.lookup( "cn=dummy,ou=schema" ) );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
}
@@ -415,25 +416,25 @@ public class MetaSchemaHandlerIT extends
@Test
public void testAddEnabledSchemaWithExistingEnabledDeps() throws Exception
{
- Dn dn = getSchemaContainer( "dummy" );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
- "objectClass: top",
- "objectClass", MetaSchemaConstants.META_SCHEMA_OC,
- "cn: dummy",
- "m-dependencies: core",
- "m-dependencies: system",
- MetaSchemaConstants.M_DISABLED_AT, "FALSE");
+ Entry dummySchema = new DefaultEntry(
+ dn,
+ "objectClass: top",
+ "objectClass", MetaSchemaConstants.META_SCHEMA_OC,
+ "cn: dummy",
+ "m-dependencies: core",
+ "m-dependencies: system",
+ MetaSchemaConstants.M_DISABLED_AT, "FALSE");
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
assertTrue( IntegrationUtils.isEnabled( getService(), "dummy" ) );
- assertNotNull( schemaRoot.lookup( "cn=dummy" ) );
+ assertNotNull( connection.lookup( "cn=dummy, ou=schema" ) );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
}
@@ -443,12 +444,12 @@ public class MetaSchemaHandlerIT extends
@Test
public void testAddEnabledSchemaWithExistingDisabledDeps() throws Exception
{
- Dn dn = getSchemaContainer( "dummy" );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
@@ -458,16 +459,16 @@ public class MetaSchemaHandlerIT extends
try
{
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
fail();
}
- catch ( OperationNotSupportedException lonse )
+ catch ( LdapException lonse )
{
// expected
}
assertFalse( IntegrationUtils.isLoaded( getService(), "dummy" ) );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
}
@@ -477,12 +478,12 @@ public class MetaSchemaHandlerIT extends
@Test
public void testAddEnabledSchemaWithNotExistingDeps() throws Exception
{
- Dn dn = getSchemaContainer( "dummy" );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
@@ -492,16 +493,16 @@ public class MetaSchemaHandlerIT extends
try
{
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
fail();
}
- catch ( OperationNotSupportedException lonse )
+ catch ( LdapException lonse )
{
// expected
}
assertFalse( IntegrationUtils.isLoaded( getService(), "dummy" ) );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
}
@@ -514,23 +515,19 @@ public class MetaSchemaHandlerIT extends
@Test
public void testDeleteEnabledValidSchema() throws Exception
{
- Dn dn = getSchemaContainer( "dummy" );
- LdapContext schemaRoot = getSchemaContext( getService() );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
// Create a schema we will delete
createEnabledValidSchema( "dummy" );
- assertTrue( isOnDisk0( dn ) );
+ assertTrue( isOnDisk( dn ) );
assertTrue( IntegrationUtils.isLoaded( getService(), "dummy" ) );
// Delete the schema
- schemaRoot.destroySubcontext( "cn=dummy" );
+ connection.delete( dn );
- assertFalse( isOnDisk0( dn ) );
+ assertFalse( isOnDisk( dn ) );
assertFalse( IntegrationUtils.isLoaded( getService(), "dummy" ) );
}
-
-
-
/**
@@ -543,17 +540,19 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testAddDisabledSchemaNoDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
+
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
MetaSchemaConstants.M_DISABLED_AT, "TRUE" );
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
assertFalse( IntegrationUtils.isEnabled( getService(), "dummy" ) );
- assertNotNull( schemaRoot.lookup( "cn=dummy" ) );
+ assertNotNull( connection.lookup( "cn=dummy,ou=schema" ) );
}
@@ -567,8 +566,10 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testAddDisabledSchemaWithDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
+
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
@@ -576,10 +577,10 @@ public class MetaSchemaHandlerIT extends
"m-dependencies: nis",
"m-dependencies: core" );
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
assertFalse( IntegrationUtils.isEnabled( getService(), "dummy" ) );
- assertNotNull( schemaRoot.lookup( "cn=dummy" ) );
+ assertNotNull( connection.lookup( "cn=dummy,ou=schema" ) );
}
@@ -593,8 +594,10 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectDisabledSchemaAddWithMissingDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
+
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
@@ -604,9 +607,9 @@ public class MetaSchemaHandlerIT extends
try
{
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
}
- catch( OperationNotSupportedException e )
+ catch( LdapException e )
{
// expected
}
@@ -616,14 +619,15 @@ public class MetaSchemaHandlerIT extends
//noinspection EmptyCatchBlock
try
{
- schemaRoot.lookup( "cn=dummy" );
+ connection.lookup( "cn=dummy,ou=schema" );
fail( "schema should not be added to schema partition" );
}
- catch( NamingException e )
+ catch( LdapException e )
{
}
}
+
/**
* Tests the addition of a new metaSchema object that is enabled
* on addition and has no dependencies.
@@ -634,17 +638,19 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testAddEnabledSchemaNoDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
+
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass: metaSchema",
"cn: dummy"
);
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
assertTrue( IntegrationUtils.isEnabled( getService(), "dummy" ) );
- assertNotNull( schemaRoot.lookup( "cn=dummy" ) );
+ assertNotNull( connection.lookup( "cn=dummy,ou=schema" ) );
}
@@ -658,8 +664,10 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectEnabledSchemaAddWithDisabledDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
+
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
@@ -667,10 +675,10 @@ public class MetaSchemaHandlerIT extends
try
{
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
fail( "should not be able to add enabled schema with deps on disabled schemas" );
}
- catch( OperationNotSupportedException e )
+ catch( LdapException e )
{
// expected
}
@@ -680,10 +688,10 @@ public class MetaSchemaHandlerIT extends
//noinspection EmptyCatchBlock
try
{
- schemaRoot.lookup( "cn=dummy" );
+ connection.lookup( "cn=dummy,ou=schema" );
fail( "schema should not be added to schema partition" );
}
- catch( NamingException e )
+ catch( LdapException e )
{
}
}
@@ -703,14 +711,14 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testDeleteSchemaNoDependents() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
// add the dummy schema enabled
testAddEnabledSchemaNoDeps();
assertTrue( IntegrationUtils.isEnabled( getService(), "dummy" ) );
// delete it now
- schemaRoot.destroySubcontext( "cn=dummy" );
+ connection.delete( dn );
assertFalse( IntegrationUtils.isEnabled( getService(), "dummy" ) );
}
@@ -724,25 +732,21 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectSchemaDeleteWithDependents() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
-
// add the dummy schema enabled
testAddEnabledSchemaNoDeps();
assertTrue( IntegrationUtils.isEnabled( getService(), "dummy" ) );
// make the nis schema depend on the dummy schema
- ModificationItem[] mods = new ModificationItem[1];
- mods[0] = new ModificationItem( DirContext.ADD_ATTRIBUTE,
- new BasicAttribute( "m-dependencies", "dummy" ) );
- schemaRoot.modifyAttributes( "cn=nis", mods );
+ connection.modify( "cn=nis,ou=schema",
+ new DefaultModification( ModificationOperation.ADD_ATTRIBUTE, "m-dependencies", "dummy" ) );
// attempt to delete it now & it should fail
try
{
- schemaRoot.destroySubcontext( "cn=dummy" );
+ connection.delete( "cn=dummy,ou=schema" );
fail( "should not be able to delete a schema with dependents" );
}
- catch ( OperationNotSupportedException e )
+ catch ( LdapException e )
{
// expected
}
@@ -761,9 +765,10 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectEnabledSchemaAddWithMisingDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
+ Dn dn = new Dn( "cn=dummy,ou=schema" );
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
@@ -771,10 +776,10 @@ public class MetaSchemaHandlerIT extends
try
{
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
fail( "should not be able to add enabled schema with deps on missing schemas" );
}
- catch( OperationNotSupportedException e )
+ catch( LdapException e )
{
// expected
}
@@ -784,10 +789,10 @@ public class MetaSchemaHandlerIT extends
//noinspection EmptyCatchBlock
try
{
- schemaRoot.lookup( "cn=dummy" );
+ connection.lookup( "cn=dummy,ou=schema" );
fail( "schema should not be added to schema partition" );
}
- catch( NamingException e )
+ catch( LdapException e )
{
}
}
@@ -804,8 +809,6 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testDisableSchemaWithEnabledDependents() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
-
// let's enable the test schema and add the dummy schema
// as enabled by default and dependends on the test schema
@@ -813,13 +816,16 @@ public class MetaSchemaHandlerIT extends
testEnableExistingSchema();
// adds enabled dummy schema that depends on the test schema
- Attributes dummySchema = LdifUtils.createJndiAttributes(
+ Dn dn = new Dn( "cn=dummy, ou=schema" );
+
+ Entry dummySchema = new DefaultEntry(
+ dn,
"objectClass: top",
"objectClass", MetaSchemaConstants.META_SCHEMA_OC,
"cn: dummy",
"m-dependencies: nis" );
- schemaRoot.createSubcontext( "cn=dummy", dummySchema );
+ connection.add( dummySchema );
// check that the nis schema is loaded and the dummy schema is loaded
assertTrue( IntegrationUtils.isEnabled( getService(), "nis" ) );
@@ -827,20 +833,17 @@ public class MetaSchemaHandlerIT extends
// double check and make sure an attribute from that schema is
// in the AttributeTypeRegistry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
// now try to disable the test schema which should fail
// since it's dependent, the dummy schema, is enabled
- ModificationItem[] mods = new ModificationItem[1];
- Attribute attr = new BasicAttribute( "m-disabled", "TRUE" );
- mods[0] = new ModificationItem( DirContext.REPLACE_ATTRIBUTE, attr );
-
try
{
- schemaRoot.modifyAttributes( "cn=nis", mods );
+ connection.modify( "cn=nis,ou=schema",
+ new DefaultModification( ModificationOperation.REPLACE_ATTRIBUTE, "m-disabled", "TRUE" ) );
fail( "attempt to disable schema with enabled dependents should fail" );
}
- catch ( OperationNotSupportedException e )
+ catch ( LdapException e )
{
// expected
}
@@ -851,7 +854,7 @@ public class MetaSchemaHandlerIT extends
// double check and make sure the test attribute from the test
// schema is still loaded and present within the attr registry
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( UID_NUMBER_ATTR ) );
}
@@ -869,25 +872,24 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testSchemaRenameDisabledSchema() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- schemaRoot.rename( "cn=samba", "cn=foo" );
- assertNotNull( schemaRoot.lookup( "cn=foo" ) );
+ connection.rename( "cn=samba,ou=schema", "cn=foo" );
+ assertNotNull( connection.lookup( "cn=foo,ou=schema" ) );
// check that there is a samba schema installed and that is is disabled
- Attributes attributes = schemaRoot.getAttributes( "cn=foo" );
- assertNotNull( attributes );
- assertTrue( attributes.get( MetaSchemaConstants.M_DISABLED_AT ).contains( "TRUE" ) );
- attributes = schemaRoot.getAttributes( "ou=attributeTypes,cn=foo" );
- assertNotNull( attributes );
- assertTrue( attributes.get( SchemaConstants.OU_AT ).contains( "attributetypes" ) );
+ Entry entry = connection.lookup( "cn=foo,ou=schema" );
+ assertNotNull( entry );
+ assertTrue( entry.get( MetaSchemaConstants.M_DISABLED_AT ).contains( "TRUE" ) );
+ entry = connection.lookup( "ou=attributeTypes,cn=foo,ou=schema" );
+ assertNotNull( entry );
+ assertTrue( entry.get( SchemaConstants.OU_AT ).contains( "attributetypes" ) );
//noinspection EmptyCatchBlock
try
{
- schemaRoot.lookup( "cn=samba" );
+ connection.lookup( "cn=samba,ou=schema" );
fail( "the samba schema should not be present after a rename to foo" );
}
- catch( NameNotFoundException e )
+ catch( LdapException e )
{
}
}
@@ -904,26 +906,25 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectSchemaRenameWithDeps() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
try
{
- schemaRoot.rename( "cn=nis", "cn=foo" );
+ connection.rename( "cn=nis,ou=schema", "cn=foo" );
fail( "should not be able to rename nis which has samba as it's dependent" );
}
- catch ( OperationNotSupportedException onse )
+ catch ( LdapException onse )
{
// expected
}
- assertNotNull( schemaRoot.lookup( "cn=nis" ) );
+ assertNotNull( connection.lookup( "cn=nis,ou=schema" ) );
//noinspection EmptyCatchBlock
try
{
- schemaRoot.lookup( "cn=foo" );
+ connection.lookup( "cn=foo,ou=schema" );
fail( "the foo schema should not be present after rejecting the rename" );
}
- catch( NameNotFoundException e )
+ catch( LdapException e )
{
}
}
@@ -940,24 +941,22 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testSchemaRenameEnabledSchema() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
-
IntegrationUtils.enableSchema( getService(), "samba" );
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( "sambaNTPassword" ) );
- assertEquals( "samba", getService().getSchemaManager().getAttributeTypeRegistry().getSchemaName( "sambaNTPassword" ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( "sambaNTPassword" ) );
+ assertEquals( "samba", schemaManager.getAttributeTypeRegistry().getSchemaName( "sambaNTPassword" ) );
- schemaRoot.rename( "cn=samba", "cn=foo" );
- assertNotNull( schemaRoot.lookup( "cn=foo" ) );
- assertTrue( getService().getSchemaManager().getAttributeTypeRegistry().contains( "sambaNTPassword" ) );
- assertEquals( "foo", getService().getSchemaManager().getAttributeTypeRegistry().getSchemaName( "sambaNTPassword" ) );
+ connection.rename( "cn=samba,ou=schema", "cn=foo" );
+ assertNotNull( connection.lookup( "cn=foo, ou=schema" ) );
+ assertTrue( schemaManager.getAttributeTypeRegistry().contains( "sambaNTPassword" ) );
+ assertEquals( "foo", schemaManager.getAttributeTypeRegistry().getSchemaName( "sambaNTPassword" ) );
//noinspection EmptyCatchBlock
try
{
- schemaRoot.lookup( "cn=samba" );
+ connection.lookup( "cn=samba, ou=schema" );
fail( "the samba schema should not be present after a rename to foo" );
}
- catch( NameNotFoundException e )
+ catch( LdapException e )
{
}
}
@@ -976,18 +975,13 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectAddBogusDependency() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
-
- ModificationItem[] mods = new ModificationItem[1];
- Attribute attr = new BasicAttribute( "m-dependencies", "bogus" );
- mods[0] = new ModificationItem( DirContext.ADD_ATTRIBUTE, attr );
-
try
{
- schemaRoot.modifyAttributes( "cn=nis", mods );
+ connection.modify( "cn=nis,ou=schema",
+ new DefaultModification( ModificationOperation.ADD_ATTRIBUTE, "m-dependencies", "bogus" ));
fail( "Should not be able to add bogus dependency to schema" );
}
- catch ( OperationNotSupportedException onse )
+ catch ( LdapException onse )
{
// expected
}
@@ -1006,18 +1000,15 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testRejectAddOfDisabledDependencyToEnabledSchema() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
IntegrationUtils.enableSchema( getService(), "nis" );
- ModificationItem[] mods = new ModificationItem[1];
- Attribute attr = new BasicAttribute( "m-dependencies", "mozilla" );
- mods[0] = new ModificationItem( DirContext.ADD_ATTRIBUTE, attr );
try
{
- schemaRoot.modifyAttributes( "cn=nis", mods );
+ connection.modify( "cn=nis,ou=schema",
+ new DefaultModification( ModificationOperation.ADD_ATTRIBUTE, "m-dependencies", "mozilla" ) );
fail( "Should not be able to add disabled dependency to schema" );
}
- catch ( OperationNotSupportedException onse )
+ catch ( LdapException onse )
{
// expected
}
@@ -1034,13 +1025,11 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testAddOfDisabledDependencyToDisabledSchema() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- ModificationItem[] mods = new ModificationItem[1];
- Attribute attr = new BasicAttribute( "m-dependencies", "mozilla" );
- mods[0] = new ModificationItem( DirContext.ADD_ATTRIBUTE, attr );
- schemaRoot.modifyAttributes( "cn=nis", mods );
- Attributes attrs = schemaRoot.getAttributes( "cn=nis" );
- Attribute dependencies = attrs.get( "m-dependencies" );
+ connection.modify( "cn=nis,ou=schema",
+ new DefaultModification( ModificationOperation.ADD_ATTRIBUTE, "m-dependencies", "mozilla" ) );
+
+ Entry entry = connection.lookup( "cn=nis,ou=schema" );
+ Attribute dependencies = entry.get( "m-dependencies" );
assertTrue( dependencies.contains( "mozilla" ) );
}
@@ -1055,13 +1044,10 @@ public class MetaSchemaHandlerIT extends
@Ignore
public void testAddOfEnabledDependencyToDisabledSchema() throws Exception
{
- LdapContext schemaRoot = getSchemaContext( getService() );
- ModificationItem[] mods = new ModificationItem[1];
- Attribute attr = new BasicAttribute( "m-dependencies", "java" );
- mods[0] = new ModificationItem( DirContext.ADD_ATTRIBUTE, attr );
- schemaRoot.modifyAttributes( "cn=nis", mods );
- Attributes attrs = schemaRoot.getAttributes( "cn=nis" );
- Attribute dependencies = attrs.get( "m-dependencies" );
+ connection.modify( "cn=nis,ou=schema",
+ new DefaultModification( ModificationOperation.ADD_ATTRIBUTE, "m-dependencies", "java" ) );
+ Entry entry = connection.lookup( "cn=nis,ou=schema" );
+ Attribute dependencies = entry.get( "m-dependencies" );
assertTrue( dependencies.contains( "java" ) );
}
}