Author: tfmorris
Date: 2007-08-03 13:04:56-0700
New Revision: 13226
Modified:
trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java
trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java
trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java
trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java
Log:
Add methods for UML 2.x PackageImport. Deprecate UML 1.x Permission methods.
Modified: trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java?view=diff&rev=13226&p1=trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java&p2=trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java&r1=13225&r2=13226
==============================================================================
--- trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java (original)
+++ trunk/src/model-euml/src/org/argouml/model/euml/CoreFactoryEUMLImpl.java 2007-08-03 13:04:56-0700
@@ -364,12 +364,45 @@
// TODO Auto-generated method stub
return null;
}
+ /**
+ * Removed from UML2.x, use buildPackageImport instead.
+ */
+ @Deprecated
+ public PackageImport buildPermission(Object client, Object supplier) {
+ return buildPackageImport(client, supplier);
+ }
+
+ public PackageImport buildPackageAccess(final Object client,
+ final Object supplier) {
+ PackageImport packageImport = buildPackageImport(client, supplier);
+ // TODO: Do we care if this is undoable?
+ packageImport.setVisibility(VisibilityKind.PACKAGE_LITERAL);
+ return packageImport;
+ }
+
+ public PackageImport buildPackageImport(final Object client,
+ final Object supplier) {
+ if (!(client instanceof Namespace)) {
+ throw new IllegalArgumentException(
+ "The client must be instance of Namespace."); //$NON-NLS-1$
+ }
+ if (!(supplier instanceof org.eclipse.uml2.uml.Package)) {
+ throw new IllegalArgumentException(
+ "The supplier must be instance of Package."); //$NON-NLS-1$
+ }
+ RunnableClass run = new RunnableClass() {
+ public void run() {
+ PackageImport packageImport = createPackageImport();
+ packageImport.setImportedPackage((org.eclipse.uml2.uml.Package) supplier);
+ packageImport.setImportingNamespace((Namespace) client);
+ getParams().add(packageImport);
+ }
+ };
+ editingDomain.getCommandStack().execute(
+ new ChangeCommand(editingDomain, run, "Create a PackageImport"));
- public PackageImport buildPermission(Object clientObj, Object supplierObj) {
- // TODO Auto-generated method stub
- return null;
+ return (PackageImport) run.getParams().get(0);
}
-
public InterfaceRealization buildRealization(Object client,
Object supplier, Object namespace) {
// TODO: namespace is ignored
@@ -507,10 +540,18 @@
return uml.createParameter();
}
+ /**
+ * Removed from UML2.x, use createPackageImport instead.
+ */
+ @Deprecated
public PackageImport createPermission() {
- return uml.createPackageImport();
+ return createPackageImport();
}
+ public PackageImport createPackageImport() {
+ return UMLFactory.eINSTANCE.createPackageImport();
+ }
+
@SuppressWarnings("deprecation")
public Object createPrimitive() {
return createPrimitiveType();
@@ -539,4 +580,5 @@
return uml.createUsage();
}
+
}
Modified: trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java?view=diff&rev=13226&p1=trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java&p2=trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java&r1=13225&r2=13226
==============================================================================
--- trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java (original)
+++ trunk/src/model-euml/src/org/argouml/model/euml/CoreHelperEUMLImpl.java 2007-08-03 13:04:56-0700
@@ -928,5 +928,12 @@
((NamedElement) handle).setVisibility((VisibilityKind) visibility);
}
+ public Object getPackageImport(Object supplier, Object client) {
+ throw new NotYetImplementedException();
+ }
+
+ public Collection getPackageImports(Object client) {
+ throw new NotYetImplementedException();
+ }
}
Modified: trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java?view=diff&rev=13226&p1=trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java&p2=trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java&r1=13225&r2=13226
==============================================================================
--- trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java (original)
+++ trunk/src/model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java 2007-08-03 13:04:56-0700
@@ -1594,10 +1594,15 @@
return handle instanceof ActivityPartition;
}
+ @SuppressWarnings("deprecation")
public boolean isAPermission(Object handle) {
return handle instanceof PackageImport;
}
-
+
+ public boolean isAPackageImport(Object handle) {
+ return handle instanceof PackageImport;
+ }
+
@SuppressWarnings("deprecation")
public boolean isAPrimitive(Object handle) {
return isAPrimitiveType(handle);
Modified: trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java?view=diff&rev=13226&p1=trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java&p2=trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java&r1=13225&r2=13226
==============================================================================
--- trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java (original)
+++ trunk/src/model-euml/src/org/argouml/model/euml/MetaTypesEUMLImpl.java 2007-08-03 13:04:56-0700
@@ -384,11 +384,15 @@
return ActivityPartition.class;
}
+ @SuppressWarnings("deprecation")
public Object getPermission() {
- // TODO: double check this - tfm
return PackageImport.class;
}
+ public Object getPackageImport() {
+ return PackageImport.class;
+ }
+
public Object getPseudostate() {
return Pseudostate.class;
}
Modified: trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java?view=diff&rev=13226&p1=trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java&p2=trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java&r1=13225&r2=13226
==============================================================================
--- trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java (original)
+++ trunk/src/model-euml/src/org/argouml/model/euml/UmlFactoryEUMLImpl.java 2007-08-03 13:04:56-0700
@@ -191,8 +191,8 @@
fromStyle, toElement, toStyle, (Boolean) unidirectional);
} else if (elementType == metaTypes.getGeneralization()) {
connection = getCore().buildGeneralization(fromElement, toElement);
- } else if (elementType == metaTypes.getPermission()) {
- connection = getCore().buildPermission(fromElement, toElement);
+ } else if (elementType == metaTypes.getPackageImport()) {
+ connection = getCore().buildPackageImport(fromElement, toElement);
} else if (elementType == metaTypes.getUsage()) {
connection = getCore().buildUsage(fromElement, toElement);
} else if (elementType == metaTypes.getGeneralization()) {
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.