diff options
author | khussey | 2006-02-15 16:35:44 +0000 |
---|---|---|
committer | khussey | 2006-02-15 16:35:44 +0000 |
commit | a93a25c926ab63b0b18d9989ebb5c9ed2ff9608e (patch) | |
tree | 7b3cb5f50d870aa3cc45f945d5906586c2a0c170 /plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java | |
parent | acee7211b5729a03f89b9a34230087414d4e097c (diff) | |
download | org.eclipse.uml2.test-a93a25c926ab63b0b18d9989ebb5c9ed2ff9608e.tar.gz org.eclipse.uml2.test-a93a25c926ab63b0b18d9989ebb5c9ed2ff9608e.tar.xz org.eclipse.uml2.test-a93a25c926ab63b0b18d9989ebb5c9ed2ff9608e.zip |
[87260] Taking advantage of InternalEObject, EStructuralFeature.Internal APIs.
Diffstat (limited to 'plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java')
-rw-r--r-- | plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java | 42 |
1 files changed, 18 insertions, 24 deletions
diff --git a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java index 3c524acc..a27756cf 100644 --- a/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java +++ b/plugins/org.eclipse.uml2.uml/src/org/eclipse/uml2/uml/util/UMLUtil.java @@ -8,7 +8,7 @@ * Contributors: * IBM - initial API and implementation * - * $Id: UMLUtil.java,v 1.14 2006/02/08 17:09:15 khussey Exp $ + * $Id: UMLUtil.java,v 1.15 2006/02/15 16:35:44 khussey Exp $ */ package org.eclipse.uml2.uml.util; @@ -3311,11 +3311,10 @@ public class UMLUtil .next(); if (eModelElement instanceof EStructuralFeature) { - EStructuralFeature eStructuralFeature = (EStructuralFeature) eModelElement; + EStructuralFeature.Internal eStructuralFeature = (EStructuralFeature.Internal) eModelElement; if (eStructuralFeature.isDerived() - && ((eStructuralFeature instanceof EReference && ((EReference) eStructuralFeature) - .isContainment()) + && (eStructuralFeature.isContainment() || !eStructuralFeature.isTransient() || !eStructuralFeature .isVolatile())) { @@ -3756,7 +3755,7 @@ public class UMLUtil .getEStructuralFeatures().iterator(); eStructuralFeatures .hasNext();) { - EStructuralFeature eStructuralFeature = (EStructuralFeature) eStructuralFeatures + EStructuralFeature.Internal eStructuralFeature = (EStructuralFeature.Internal) eStructuralFeatures .next(); for (Iterator eAllStructuralFeatures = eClass @@ -3849,13 +3848,11 @@ public class UMLUtil eAllStructuralFeature})); } - if (eStructuralFeature instanceof EReference) { - EReference eOpposite = ((EReference) eStructuralFeature) - .getEOpposite(); + EReference eOpposite = eStructuralFeature + .getEOpposite(); - if (eOpposite != null) { - featuresToRemove.add(eOpposite); - } + if (eOpposite != null) { + featuresToRemove.add(eOpposite); } eStructuralFeatures.remove(); @@ -3888,29 +3885,26 @@ public class UMLUtil for (Iterator eStructuralFeatures = featuresToDuplicate.iterator(); eStructuralFeatures .hasNext();) { - EStructuralFeature eStructuralFeature = (EStructuralFeature) eStructuralFeatures + EStructuralFeature.Internal eStructuralFeature = (EStructuralFeature.Internal) eStructuralFeatures .next(); getEAnnotation(eStructuralFeature.getEContainingClass(), ANNOTATION__DUPLICATES, true).getContents().add( eStructuralFeature); - if (eStructuralFeature instanceof EReference) { - EReference eOpposite = ((EReference) eStructuralFeature) - .getEOpposite(); + EReference eOpposite = eStructuralFeature.getEOpposite(); - if (eOpposite != null - && !featuresToDuplicate.contains(eOpposite)) { + if (eOpposite != null + && !featuresToDuplicate.contains(eOpposite)) { - eOpposite.setEOpposite(null); + eOpposite.setEOpposite(null); - if (((EReference) eStructuralFeature).isContainment()) { - eOpposite.setChangeable(false); - eOpposite.setTransient(true); - } - - eOpposite.setVolatile(true); + if (eStructuralFeature.isContainment()) { + eOpposite.setChangeable(false); + eOpposite.setTransient(true); } + + eOpposite.setVolatile(true); } } |