Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJB20FlattenedRoleShapeStrategy.java')
-rw-r--r--plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJB20FlattenedRoleShapeStrategy.java170
1 files changed, 0 insertions, 170 deletions
diff --git a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJB20FlattenedRoleShapeStrategy.java b/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJB20FlattenedRoleShapeStrategy.java
deleted file mode 100644
index 6499b3277..000000000
--- a/plugins/org.eclipse.jst.j2ee.core/mofj2ee/org/eclipse/jst/j2ee/ejb/internal/impl/EJB20FlattenedRoleShapeStrategy.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.j2ee.ejb.internal.impl;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.java.JavaHelpers;
-import org.eclipse.jst.j2ee.ejb.CMPAttribute;
-import org.eclipse.jst.j2ee.ejb.CommonRelationshipRole;
-import org.eclipse.jst.j2ee.ejb.ContainerManagedEntity;
-import org.eclipse.jst.j2ee.ejb.EjbPackage;
-import org.eclipse.jst.j2ee.ejb.IRoleShapeStrategy;
-
-/**
- * Insert the type's description here.
- * Creation date: (11/6/2000 11:41:33 AM)
- * @author: Administrator
- */
-public class EJB20FlattenedRoleShapeStrategy extends RoleShapeStrategy {
- /**
- * FlattenedRoleShapeStrategy constructor comment.
- */
- public EJB20FlattenedRoleShapeStrategy(CommonRelationshipRole aRole) {
- super(aRole);
- }
- protected boolean canContinue() {
- return !busy && role.getName() != null && (role.isForward() ||
- (role.isMany() && (role.getOppositeAsCommonRole() == null ||
- role.getOppositeAsCommonRole().isMany())));
- }
-
- public boolean usesAttributeNamed(String attributeName) {
- if (attributeName != null) {
- int index = attributeName.indexOf(IRoleShapeStrategy.ATTRIBUTE_NAME_JOINER);
- String name = attributeName.substring(0, index);
- return getRole().getName().equals(name);
- }
- return false;
- }
-
- /**
- * @see RoleShapeStrategy#reconcileAttributes(CommonRelationshipRole, String, List, List)
- */
- protected void reconcileAttributes(CommonRelationshipRole aRole, String attributeName, List aList, List computedNames) {
-
- Resource res = aRole.eResource();
- boolean dirtyFlag = res != null ? res.isModified() : false;
- try {
- if (aRole.getOppositeAsCommonRole() != null) {
- ContainerManagedEntity entity = aRole.getOppositeAsCommonRole().getSourceEntity();
- // ContainerManagedEntityExtension roleType = (ContainerManagedEntityExtension)getTypeExtension(aRole);
- if (entity != null)
- collectAttributes(entity, attributeName, aList, computedNames);
- }
- } finally {
- if (res != null)
- res.setModified(dirtyFlag);
- }
- }
-
- /**
- * @see com.ibm.ejs.models.base.extensions.ejbext.impl.FlattenedRoleShapeStrategy#setDerivedAttributeType(CMPAttribute, JavaHelpers)
- */
- protected void setDerivedAttributeType(CMPAttribute attribute, CMPAttribute targetAttribute, boolean isNew) {
- if (targetAttribute == null) return;
- JavaHelpers fieldType = targetAttribute.getType();
- if (fieldType != null) {
- int singleRoleNameSize = getRole().getName().length() + targetAttribute.getName().length() + 1; //one for the underscore
- if (!(attribute.getName().length() > singleRoleNameSize)) //don't set the originating type since we are derived from another derived attribute
- attribute.setOriginatingType(fieldType);
- attribute.setEType(fieldType.getWrapper());
- }
- if (isNew && !getRole().isKey())
- attribute.setDerived(true);
- }
- /**
- * getFields method comment.
- */
- protected void collectAttributes(ContainerManagedEntity type, String attributeName, List aList, List computedNames) {
- collectKeyModelledAttributes(type, attributeName, aList, computedNames);
- collectKeyRoleAttributes(type, attributeName, aList, computedNames);
- }
-
- /**
- * @deprecated to be safe, really should use collectAttributes(ContainerManagedEntity entity, CMPAttribute type, String attributeName, List aList, List computedNames)
- * @param type
- * @param attributeName
- * @param aList
- * @param computedNames
- */
- protected void collectAttributes(CMPAttribute type, String attributeName, List aList, List computedNames) {
- // This is necessary for code generation
- ContainerManagedEntity entity = (ContainerManagedEntity) type.eContainer();
- collectAttributes(entity, type, attributeName, aList, computedNames);
- }
-
- /**
- *
- */
- protected void collectAttributes(ContainerManagedEntity entity, CMPAttribute type, String attributeName, List aList, List computedNames) {
- boolean isNewAttribute = false;
- attributeName = appendName(attributeName, type.getName());
- computedNames.add(attributeName);
- CMPAttribute attribute = getCMPEntity().getPersistentAttribute(attributeName);
- if (attribute == null) {
- attribute = createPersistentAttribute(attributeName);
- isNewAttribute = true;
- }
- if (entity != null)
- setDerivedAttributeType(attribute, type, isNewAttribute);
- if (isNewAttribute) {
- if (getRole().isKey())
- getCMPEntity().getKeyAttributes().add(attribute);
- aList.add(attribute);
- getCMPEntity().getPersistentAttributes().add(attribute);
- } else {
- if (!aList.contains(attribute))
- aList.add(attribute);
- }
- }
-
- protected CMPAttribute createPersistentAttribute(String aName) {
- CMPAttribute attribute = ((EjbPackage)EPackage.Registry.INSTANCE.getEPackage(EjbPackage.eNS_URI)).getEjbFactory().createCMPAttribute();
- attribute.setName(aName);
- attribute.setDescription("Generated to support relationships. Do NOT delete.");
- return attribute;
- }
- /**
- * getFields method comment.
- */
- protected void collectKeyModelledAttributes(ContainerManagedEntity entity, String attributeName, List aList, List computedNames) {
- java.util.Iterator it = entity.getFilteredFeatures(ModelledKeyAttributeFilter.singleton()).iterator();
- CMPAttribute attribute;
- while (it.hasNext()) {
- attribute = (CMPAttribute) it.next();
- collectAttributes(entity, attribute, attributeName, aList, computedNames);
- }
- }
- /**
- * getFields method comment.
- */
- protected void collectKeyRoleAttributes(ContainerManagedEntity entity, String attributeName, List aList, List computedNames) {
- if(visitedKeyTypes.contains(entity)){
- throw new RuntimeException("Key role cycle detected");
- }
- visitedKeyTypes.add(entity);
- java.util.Iterator it = entity.getFilteredFeatures(KeyRelationshipRoleFilter.singleton()).iterator();
- CommonRelationshipRole aRole;
- while (it.hasNext()) {
- aRole = (CommonRelationshipRole) it.next();
- String attName = appendName(attributeName, aRole.getName());
- reconcileAttributes(aRole, attName, aList, computedNames);
- }
- }
- protected ContainerManagedEntity getCMPEntity() {
- return getRole().getSourceEntity();
- }
-
-
-}

Back to the top