blob: 6d9164c755d81e5ac3b6240c1ef9715b67461062 [file] [log] [blame]
package org.apache.tuscany.das.ldap.schema.setup.test;
import javax.naming.NamingException;
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 org.apache.tuscany.das.ldap.constants.DASConstants;
public class EcoreSchemaAndDASContextsSetup
extends DASContextSetup
implements DASConstants
{
public void tearDown()
throws NamingException, Exception
{
ecoreSyntaxesContext.close();
ecoreContext.destroySubcontext( SYNTAXES_CONTEXT_RDN );
ecoreAttributeTypesContext.close();
ecoreContext.destroySubcontext( ATTRIBUTE_TYPES_CONTEXT_RDN );
ecoreObjectClassesContext.close();
ecoreContext.destroySubcontext( OBJECT_CLASSES_CONTEXT_RDN );
ecoreContext.close();
schemaContext.destroySubcontext( ECORE_CONTEXT_RDN );
schemaContext.close();
super.tearDown();
}
public void setUp() throws NamingException, Exception
{
super.setUp();
schemaContext = connect("schema");
ecoreContext = createEcoreContext();
ecoreSyntaxesContext = createEcoreSyntaxesContext();
ecoreObjectClassesContext = createEcoreObjectClassesContext();
ecoreAttributeTypesContext = createEcoreAttributeTypesContext();
}
private DirContext createEcoreContext() throws NamingException
{
Attributes contextAttributes = new BasicAttributes();
Attribute objectClassAttribute = new BasicAttribute(
OBJECT_CLASS,
TOP);
objectClassAttribute.add(META_SCHEMA);
Attribute ecoreAttribute = new BasicAttribute(
CN,
ECORE_CONTEXT_NAME);
contextAttributes.put( ecoreAttribute );
contextAttributes.put( objectClassAttribute );
return schemaContext.createSubcontext(
ECORE_CONTEXT_RDN, contextAttributes );
}
private DirContext createEcoreObjectClassesContext() throws NamingException
{
Attributes contextAttributes = new BasicAttributes();
Attribute objectClassAttribute = new BasicAttribute(
OBJECT_CLASS,
TOP);
objectClassAttribute.add(ORGANIZATIONAL_UNIT);
Attribute ecoreAttribute = new BasicAttribute(
OU,
OBJECT_CLASSES_CONTEXT_NAME);
contextAttributes.put( ecoreAttribute );
contextAttributes.put( objectClassAttribute );
return ecoreContext.createSubcontext(
OBJECT_CLASSES_CONTEXT_RDN, contextAttributes );
}
private DirContext createEcoreAttributeTypesContext() throws NamingException
{
Attributes contextAttributes = new BasicAttributes();
Attribute objectClassAttribute = new BasicAttribute(
OBJECT_CLASS,
TOP);
objectClassAttribute.add(ORGANIZATIONAL_UNIT);
Attribute ecoreAttribute = new BasicAttribute(
OU,
ATTRIBUTE_TYPES_CONTEXT_NAME);
contextAttributes.put( ecoreAttribute );
contextAttributes.put( objectClassAttribute );
return ecoreContext.createSubcontext(
ATTRIBUTE_TYPES_CONTEXT_RDN, contextAttributes );
}
private DirContext createEcoreSyntaxesContext() throws NamingException
{
Attributes contextAttributes = new BasicAttributes();
Attribute objectClassAttribute = new BasicAttribute(
OBJECT_CLASS,
TOP);
objectClassAttribute.add(ORGANIZATIONAL_UNIT);
Attribute ecoreAttribute = new BasicAttribute(
OU,
SYNTAXES_CONTEXT_NAME);
contextAttributes.put( ecoreAttribute );
contextAttributes.put( objectClassAttribute );
return ecoreContext.createSubcontext(
SYNTAXES_CONTEXT_RDN, contextAttributes );
}
protected DirContext ecoreContext = null;
protected DirContext ecoreObjectClassesContext = null;
protected DirContext ecoreAttributeTypesContext = null;
protected DirContext ecoreSyntaxesContext = null;
}