https://bugs.eclipse.org/bugs/show_bug.cgi?id=77405
diff --git a/deprecated/examples/org.eclipse.uml2.examples/src/org/eclipse/uml2/examples/uml22ecore/UML22Ecore.java b/deprecated/examples/org.eclipse.uml2.examples/src/org/eclipse/uml2/examples/uml22ecore/UML22Ecore.java
index 21d893a..6c19bb4 100644
--- a/deprecated/examples/org.eclipse.uml2.examples/src/org/eclipse/uml2/examples/uml22ecore/UML22Ecore.java
+++ b/deprecated/examples/org.eclipse.uml2.examples/src/org/eclipse/uml2/examples/uml22ecore/UML22Ecore.java
@@ -8,7 +8,7 @@
* Contributors:
* IBM - Initial API and implementation
*
- * $Id: UML22Ecore.java,v 1.5 2004/10/01 19:38:34 khussey Exp $
+ * $Id: UML22Ecore.java,v 1.6 2004/11/18 18:07:54 khussey Exp $
*/
package org.eclipse.uml2.examples.uml22ecore;
@@ -63,11 +63,11 @@
import org.eclipse.uml2.util.UML2Switch;
/**
- *
+ *
*/
public class UML22Ecore
- extends UML2Switch
- implements Converter {
+ extends UML2Switch
+ implements Converter {
protected final Map modelMap = new HashMap();
@@ -776,6 +776,86 @@
ExtendedMetaData.INSTANCE.setFeatureKind(eStructuralFeature,
featureKind);
}
+
+ try {
+ EnumerationLiteral visibility = (EnumerationLiteral) object
+ .getValue(eStructuralFeatureStereotype, "visibility"); //$NON-NLS-1$
+
+ int visibilityKind = visibility.getEnumeration()
+ .getOwnedLiterals().indexOf(visibility);
+
+ switch (visibilityKind) {
+ case 1 :
+ EcoreUtil.setSuppressedVisibility(eStructuralFeature,
+ EcoreUtil.GET, true);
+
+ if (eStructuralFeature.isChangeable()
+ && !eStructuralFeature.isMany()) {
+
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.SET, true);
+ }
+
+ if (eStructuralFeature.isUnsettable()) {
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.IS_SET, true);
+
+ if (eStructuralFeature.isChangeable()) {
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.UNSET, true);
+ }
+ }
+ break;
+ case 2 :
+ if (!eStructuralFeature.isMany()
+ && eStructuralFeature.isChangeable()) {
+
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.SET, true);
+ }
+
+ if (eStructuralFeature.isUnsettable()) {
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.IS_SET, true);
+
+ if (eStructuralFeature.isChangeable()) {
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.UNSET, true);
+ }
+ }
+ break;
+ case 3 :
+ if (eStructuralFeature.isUnsettable()) {
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.IS_SET, true);
+
+ if (eStructuralFeature.isChangeable()) {
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.UNSET, true);
+ }
+ }
+ break;
+ case 4 :
+ if (!eStructuralFeature.isMany()
+ && eStructuralFeature.isChangeable()) {
+
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.SET, true);
+ }
+
+ if (eStructuralFeature.isUnsettable()
+ && eStructuralFeature.isChangeable()) {
+
+ EcoreUtil.setSuppressedVisibility(
+ eStructuralFeature, EcoreUtil.UNSET, true);
+ }
+ break;
+ default :
+ break;
+ }
+ } catch (IllegalArgumentException iae) {
+ // ignore
+ }
}
setAnnotations(object, eStructuralFeature);
diff --git a/plugins/org.eclipse.uml2-feature/feature.xml b/plugins/org.eclipse.uml2-feature/feature.xml
index 893b4dd..a64530d 100644
--- a/plugins/org.eclipse.uml2-feature/feature.xml
+++ b/plugins/org.eclipse.uml2-feature/feature.xml
@@ -12,7 +12,7 @@
* Contributors:
* IBM - Initial API and implementation
*
- * $Id: feature.xml,v 1.8 2004/11/15 18:04:37 khussey Exp $
+ * $Id: feature.xml,v 1.9 2004/11/18 18:07:57 khussey Exp $
*/
-->
@@ -68,6 +68,6 @@
id="org.eclipse.uml2.resources"
download-size="0"
install-size="0"
- version="1.0.1"/>
+ version="1.1.0"/>
</feature>