svn commit: r12729 - trunk/src/model-mdr/src/org/argouml/model/mdr
[email protected] 30 May 2007 19:03:59 -0000
Newsgroups
gmane.comp.lang.uml.argouml.cvs
Message-ID
<[email protected] >
Author: tfmorris
Date: 2007-05-30 12:03:59-0700
New Revision: 12729
Modified:
trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java
trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java
trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java
Log:
UML 2.x Model API Updates - first round of additions & deprecations
Modified: trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java?view=diff&rev=12729&p1=trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java&p2=trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java&r1=12728&r2=12729
==============================================================================
--- trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java (original)
+++ trunk/src/model-mdr/src/org/argouml/model/mdr/CoreHelperMDRImpl.java 2007-05-30 12:03:59-0700
@@ -127,6 +127,7 @@
import org.omg.uml.foundation.datatypes.ProcedureExpression;
import org.omg.uml.foundation.datatypes.PseudostateKind;
import org.omg.uml.foundation.datatypes.ScopeKind;
+import org.omg.uml.foundation.datatypes.ScopeKindEnum;
import org.omg.uml.foundation.datatypes.VisibilityKind;
import org.omg.uml.foundation.datatypes.VisibilityKindEnum;
import org.omg.uml.modelmanagement.ElementImport;
@@ -2467,11 +2468,15 @@
}
+ @SuppressWarnings("deprecation")
public void setChangeable(Object handle, boolean flag) {
- setChangeability(handle, flag ? ChangeableKindEnum.CK_CHANGEABLE
- : ChangeableKindEnum.CK_FROZEN);
+ setReadOnly(handle, !flag);
}
+ public void setReadOnly(Object handle, boolean isReadOnly) {
+ setChangeability(handle, isReadOnly ? ChangeableKindEnum.CK_FROZEN
+ : ChangeableKindEnum.CK_CHANGEABLE);
+ }
public void setChild(Object handle, Object child) {
if (handle instanceof Generalization) {
@@ -2645,9 +2650,7 @@
} else if (handle instanceof TaggedValue
&& container instanceof Stereotype) {
((TaggedValue) handle).getStereotype().clear();
- if (container != null) {
- ((TaggedValue) handle).getStereotype().add(container);
- }
+ ((TaggedValue) handle).getStereotype().add(container);
} else if (handle instanceof TaggedValue
&& container instanceof ModelElement) {
((TaggedValue) handle).setModelElement((ModelElement) container);
@@ -2808,6 +2811,16 @@
+ os);
}
+ public void setStatic(Object handle, boolean isStatic) {
+ if (handle instanceof Feature) {
+ ((Feature) handle)
+ .setOwnerScope(isStatic ? ScopeKindEnum.SK_CLASSIFIER
+ : ScopeKindEnum.SK_INSTANCE);
+ return;
+ }
+ throw new IllegalArgumentException("handle: " + handle);
+ }
+
public void setParameter(Object handle, Object parameter) {
if (handle instanceof TemplateParameter
&& parameter instanceof ModelElement) {
Modified: trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java?view=diff&rev=12729&p1=trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java&p2=trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java&r1=12728&r2=12729
==============================================================================
--- trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java (original)
+++ trunk/src/model-mdr/src/org/argouml/model/mdr/FacadeMDRImpl.java 2007-05-30 12:03:59-0700
@@ -1415,6 +1415,7 @@
}
+ @SuppressWarnings("deprecation")
public Object getChangeability(Object handle) {
try {
if (handle instanceof StructuralFeature) {
@@ -1430,6 +1431,24 @@
}
+ public boolean isReadOnly(Object handle) {
+ ChangeableKind ck;
+ try {
+ if (handle instanceof StructuralFeature) {
+ ck = ((StructuralFeature) handle).getChangeability();
+ } else if (handle instanceof AssociationEnd) {
+ ck = ((AssociationEnd) handle).getChangeability();
+ } else {
+ return illegalArgumentBoolean(handle);
+ }
+ return ChangeableKindEnum.CK_CHANGEABLE.equals(ck);
+ } catch (InvalidObjectException e) {
+ throw new InvalidElementException(e);
+ }
+ }
+
+
+
public Object getChild(Object handle) {
try {
if (handle instanceof Generalization) {
@@ -2867,6 +2886,7 @@
}
+ @SuppressWarnings("deprecation")
public Object getOwnerScope(Object handle) {
try {
if (handle instanceof Feature) {
@@ -2877,6 +2897,12 @@
}
return illegalArgumentObject(handle);
}
+
+
+ public boolean isStatic(Object handle) {
+ return ((Feature) handle).getOwnerScope().equals(
+ ScopeKindEnum.SK_CLASSIFIER);
+ }
public Object getPowertype(Object handle) {
@@ -4443,4 +4469,5 @@
}
}
+
}
Modified: trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java?view=diff&rev=12729&p1=trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java&p2=trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java&r1=12728&r2=12729
==============================================================================
--- trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java (original)
+++ trunk/src/model-mdr/src/org/argouml/model/mdr/KindsMDRImpl.java 2007-05-30 12:03:59-0700
@@ -28,6 +28,7 @@
import org.argouml.model.ChangeableKind;
import org.argouml.model.ConcurrencyKind;
import org.argouml.model.DirectionKind;
+import org.argouml.model.NotImplementedException;
import org.argouml.model.OrderingKind;
import org.argouml.model.PseudostateKind;
import org.argouml.model.ScopeKind;
@@ -44,6 +45,7 @@
/**
* Class that contains enums in the Model.
*/
+@SuppressWarnings("deprecation")
class KindsMDRImpl implements ChangeableKind, AggregationKind,
PseudostateKind, ScopeKind, ConcurrencyKind, DirectionKind,
OrderingKind, VisibilityKind {
@@ -255,5 +257,20 @@
return OrderingKindEnum.OK_UNORDERED;
}
+ public Object getEntryPoint() {
+ // UML 2.x only
+ throw new NotImplementedException();
+ }
+
+ public Object getExitPoint() {
+ // UML 2.x only
+ throw new NotImplementedException();
+ }
+
+ public Object getTerminate() {
+ // UML 2.x only
+ throw new NotImplementedException();
+ }
+
}