Author: andreas
Date: 2010-03-26 10:20:05-0700
New Revision: 18171

Modified:
   
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java

Log:
Added getCollaborations() for operations to fix issue 6026:
http://argouml.tigris.org/issues/show_bug.cgi?id=6026


Modified: 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java?view=diff&pathrev=18171&r1=18170&r2=18171
==============================================================================
--- 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
    (original)
+++ 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
    2010-03-26 10:20:05-0700
@@ -466,17 +466,24 @@
     }
 
     public Collection<Collaboration> getCollaborations(Object handle) {
-        if (!(handle instanceof Classifier)) {
-            throw new IllegalArgumentException();
-        }
-        Set<Collaboration> result = new HashSet<Collaboration>();
         if (handle instanceof Classifier) {
+           Set<Collaboration> result = new HashSet<Collaboration>();
             for (CollaborationUse cu : ((Classifier) handle)
                     .getCollaborationUses()) {
                 result.add(cu.getType());
             }
+           return result;
         }
-        return result;
+       if (handle instanceof Operation) {
+           List<Collaboration> result = new ArrayList<Collaboration>();
+           for( RedefinableElement re : 
((Operation)handle).getRedefinedElements()) {
+               if( re instanceof Collaboration) {
+                   result.add( (Collaboration)re);
+                }
+           }
+           return result;
+       }
+        throw new IllegalArgumentException();
     }
 
     public Collection<Comment> getComments(Object handle) {

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2465586

To unsubscribe from this discussion, e-mail: 
[[email protected]].

Reply via email to