diff options
Diffstat (limited to 'das-java/contrib/ldap/das.ldap/src/main/java/org/apache/tuscany/das/ldap/prototype/setup/test/CommonSetupTest.java')
-rw-r--r-- | das-java/contrib/ldap/das.ldap/src/main/java/org/apache/tuscany/das/ldap/prototype/setup/test/CommonSetupTest.java | 264 |
1 files changed, 264 insertions, 0 deletions
diff --git a/das-java/contrib/ldap/das.ldap/src/main/java/org/apache/tuscany/das/ldap/prototype/setup/test/CommonSetupTest.java b/das-java/contrib/ldap/das.ldap/src/main/java/org/apache/tuscany/das/ldap/prototype/setup/test/CommonSetupTest.java new file mode 100644 index 0000000000..9b7673efe6 --- /dev/null +++ b/das-java/contrib/ldap/das.ldap/src/main/java/org/apache/tuscany/das/ldap/prototype/setup/test/CommonSetupTest.java @@ -0,0 +1,264 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + */ +package org.apache.tuscany.das.ldap.prototype.setup.test; + +import java.io.File; +import java.util.ArrayList; +import java.util.Hashtable; +import java.util.List; +import java.util.Map; + +import javax.naming.NamingException; +import javax.naming.ldap.LdapContext; + +import org.apache.commons.io.FileUtils; +import org.apache.tuscany.das.ldap.prototype.setup.Prototype; +import org.apache.tuscany.das.ldap.schema.embedded.setup.test.EcoreSchemaAndDASContextsSetup; +import org.apache.tuscany.das.ldap.schema.emf.create.EObjectClassCreator; +import org.apache.tuscany.das.ldap.schema.emf.destroy.EObjectClassDestroyer; +import org.eclipse.emf.common.util.BasicEList; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.sdo.EDataObject; + +public class CommonSetupTest +extends EcoreSchemaAndDASContextsSetup +implements Prototype +{ + protected EObjectClassCreator eObjectClassCreator = null; + + protected EDataObject userDataObject = null; + protected EDataObject authorizationDataObject0 = null; + protected EDataObject authorizationDataObject1 = null; + protected EDataObject configurationDataObject = null; + + protected static List<EClass> + processedEClassifiers = null; + + protected String userDataObjectRDN = + "example-com-users-accounts-User-id=1"; + protected String authorizationDataObject1RDN = + "example-com-users-accounts-Authorization-id=2,cn=authorizationList,example-com-users-accounts-User-id=1"; + protected String authorizationDataObject2RDN = + "example-com-users-accounts-Authorization-id=3,cn=authorizationList,example-com-users-accounts-User-id=1"; + protected String configurationDataObjectRDN = + "example-com-users-accounts-Configuration-id=5,cn=configuration,example-com-users-accounts-User-id=1"; + + protected String configurationContainingFeatureRDN = + "cn=configuration"; + protected String authorizationListContainingFeatureRDN= + "cn=authorizationList"; + + protected LdapContext authorizationContainerContext = null; + protected LdapContext configurationContainerContext = null; + protected LdapContext userContainerContext = null; + + protected Map<EDataObject, String> dataObjectToRelativeDNCache = null; + + public void tearDown() throws NamingException, Exception + { + rootContext.destroySubcontext(userDataObjectRDN); + + EObjectClassDestroyer. + destroy( + metaContext, + ecoreAttributeTypesContext, + ecoreObjectClassesContext, + userEClass, + TUSCANY_OID_PREFIX_VALUE ); + + super.tearDown(); + } + + public void setUp() throws Exception + { + FileUtils.deleteDirectory(new File("server-work")); + + dataObjectToRelativeDNCache = + new Hashtable<EDataObject, String>(); + + super.setUp(); + + userAuthorizationEReference. + setEType(authorizationEClass); + + userConfigurationEReference. + setEType(configurationEClass); + + configurationAuthorizationEReference. + setEType(authorizationEClass); + + configurationAuthorizationsEReference. + setEType(authorizationEClass); + + userEClass. + getEStructuralFeatures(). + add( userNameEAttribute ); + + userEClass. + getEStructuralFeatures(). + add( userAliasesEAttribute ); + + userEClass. + getEStructuralFeatures(). + add( userPasswordEAttribute ); + userEClass. + getEStructuralFeatures(). + add( userAgeEAttribute ); + userEClass. + getEStructuralFeatures(). + add( userHeightEAttribute ); + userEClass. + getEStructuralFeatures(). + add( userIsMaleEAttribute ); + userEClass. + getEStructuralFeatures(). + add( userIDEAttribute ); + userEClass. + getEStructuralFeatures(). + add( userAuthorizationEReference ); + userEClass. + getEStructuralFeatures(). + add( userConfigurationEReference ); + + userEPackage.getEClassifiers().add(userEClass); + + userDataObject = + (EDataObject) + userEFactory.create(userEClass); + + userDataObject.eSet(userNameEAttribute,"ole"); + userDataObject.eSet(userPasswordEAttribute,"secret"); + userDataObject.eSet(userIDEAttribute, "1"); + userDataObject.eSet(userAgeEAttribute, 33); + userDataObject.eSet(userHeightEAttribute, 6.11); + userDataObject.eSet(userIsMaleEAttribute, true); + + EList<String> userAliases = new BasicEList<String>(); + userAliases.add("neo"); + userAliases.add("trinity"); + userAliases.add("morpheus"); + + userDataObject.eSet( userAliasesEAttribute, userAliases ); + + authorizationEClass. + getEStructuralFeatures(). + add(authorizationFileEAttribute); + + authorizationEClass. + getEStructuralFeatures(). + add(authorizationWriteEAttribute); + + authorizationEClass. + getEStructuralFeatures(). + add(authorizationReadEAttribute); + + authorizationEClass. + getEStructuralFeatures(). + add(authorizationExecuteEAttribute); + + authorizationEClass. + getEStructuralFeatures(). + add(authorizationIDEAttribute); + + userEPackage.getEClassifiers(). + add(authorizationEClass); + + authorizationDataObject0 = + (EDataObject) + userEFactory.create(authorizationEClass); + + authorizationDataObject1 = + (EDataObject) + userEFactory.create(authorizationEClass); + + authorizationDataObject0.eSet(authorizationFileEAttribute,"somefile.text"); + authorizationDataObject0.eSet(authorizationWriteEAttribute, true); + authorizationDataObject0.eSet(authorizationReadEAttribute,true); + authorizationDataObject0.eSet(authorizationExecuteEAttribute,true); + authorizationDataObject0.eSet(authorizationIDEAttribute, "2"); + + authorizationDataObject1.eSet(authorizationFileEAttribute,"someOtherfile.text"); + authorizationDataObject1.eSet(authorizationWriteEAttribute,Boolean.TRUE); + authorizationDataObject1.eSet(authorizationReadEAttribute,true); + authorizationDataObject1.eSet(authorizationExecuteEAttribute,true); + authorizationDataObject1.eSet(authorizationIDEAttribute, "3"); + + EList<EDataObject> userDataObjectAuthorizationList = + new BasicEList<EDataObject>(); + + userDataObjectAuthorizationList.add(authorizationDataObject0); + userDataObjectAuthorizationList.add(authorizationDataObject1); + + userDataObject.eSet( + userAuthorizationEReference, + userDataObjectAuthorizationList); + + configurationEClass. + getEStructuralFeatures(). + add(configurationIDEAttribute); + + configurationEClass. + getEStructuralFeatures(). + add(configurationAuthorizationEReference); + + configurationEClass. + getEStructuralFeatures(). + add(configurationAuthorizationsEReference); + + userEPackage.getEClassifiers(). + add(configurationEClass); + + configurationDataObject = + (EDataObject) + userEFactory.create(configurationEClass); + + userDataObject.eSet( + userConfigurationEReference, + configurationDataObject); + + configurationDataObject.eSet( + configurationIDEAttribute, + "5"); + + configurationDataObject.eSet( + configurationAuthorizationEReference, + authorizationDataObject0); + + configurationDataObject.eSet( + configurationAuthorizationsEReference, + userDataObjectAuthorizationList); + + processedEClassifiers = + new ArrayList<EClass>(); + + eObjectClassCreator = + new EObjectClassCreator(); + + eObjectClassCreator. + create( + metaContext, + ecoreAttributeTypesContext, + ecoreObjectClassesContext, + userEClass, + processedEClassifiers, + TUSCANY_OID_PREFIX_VALUE ); + } +}
\ No newline at end of file |