svn commit: r16947 - trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/DataTypesHelperEUMLImpl.java
Tom Morris <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: tfmorris
Date: 2009-03-26 01:02:54-0700
New Revision: 16947
Modified:
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/DataTypesHelperEUMLImpl.java
Log:
Implement all methods
Modified: trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/DataTypesHelperEUMLImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/DataTypesHelperEUMLImpl.java?view=diff&pathrev=16947&r1=16946&r2=16947
==============================================================================
--- trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/DataTypesHelperEUMLImpl.java (original)
+++ trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/DataTypesHelperEUMLImpl.java 2009-03-26 01:02:54-0700
@@ -1,5 +1,5 @@
// $Id$
-// Copyright (c) 2007, The ArgoUML Project
+// Copyright (c) 2007,2009 Tom Morris and other contributors
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
@@ -9,14 +9,14 @@
// * Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
-// * Neither the name of the ArgoUML Project nor the
-// names of its contributors may be used to endorse or promote products
-// derived from this software without specific prior written permission.
+// * Neither the name of the project or its contributors may be used
+// to endorse or promote products derived from this software without
+// specific prior written permission.
//
-// THIS SOFTWARE IS PROVIDED BY THE ArgoUML PROJECT ``AS IS'' AND ANY
+// THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS ``AS IS'' AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-// DISCLAIMED. IN NO EVENT SHALL THE ArgoUML PROJECT BE LIABLE FOR ANY
+// DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
// DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
@@ -26,8 +26,13 @@
package org.argouml.model.euml;
+import java.util.List;
+
import org.argouml.model.DataTypesHelper;
+import org.eclipse.emf.common.util.EList;
import org.eclipse.uml2.uml.MultiplicityElement;
+import org.eclipse.uml2.uml.OpaqueExpression;
+import org.eclipse.uml2.uml.PseudostateKind;
/**
@@ -50,53 +55,53 @@
}
public boolean equalsCHOICEKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.CHOICE_LITERAL.equals(kind);
}
public boolean equalsDeepHistoryKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.DEEP_HISTORY_LITERAL.equals(kind);
}
public boolean equalsFORKKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.FORK_LITERAL.equals(kind);
}
public boolean equalsINITIALKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.INITIAL_LITERAL.equals(kind);
}
public boolean equalsJOINKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.JOIN_LITERAL.equals(kind);
}
public boolean equalsJUNCTIONKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.JUNCTION_LITERAL.equals(kind);
}
public boolean equalsShallowHistoryKind(Object kind) {
- // TODO: Auto-generated method stub
- return false;
+ return PseudostateKind.SHALLOW_HISTORY_LITERAL.equals(kind);
}
public String getBody(Object handle) {
- // TODO: Auto-generated method stub
- return null;
+ EList<String> bodies = ((OpaqueExpression) handle).getBodies();
+ if (bodies.size() < 1) {
+ return null;
+ }
+ return bodies.get(0);
}
public String getLanguage(Object handle) {
- // TODO: Auto-generated method stub
- return null;
+ EList<String> languages = ((OpaqueExpression) handle).getLanguages();
+ if (languages.size() < 1) {
+ return null;
+ }
+ return languages.get(0);
}
public String multiplicityToString(Object multiplicity) {
if (!(multiplicity instanceof MultiplicityElement)) {
- throw new IllegalArgumentException("multiplicity must be instance of MultiplicityElement"); //$NON-NLS-1$
+ throw new IllegalArgumentException(
+ "multiplicity must be instance of MultiplicityElement"); //$NON-NLS-1$
}
MultiplicityElement mult = (MultiplicityElement) multiplicity;
if (mult.getLower() == mult.getUpper()) {
@@ -110,13 +115,25 @@
}
public Object setBody(Object handle, String body) {
- // TODO: Auto-generated method stub
- return null;
+ List<String> bodies = ((OpaqueExpression) handle).getBodies();
+ // TODO: Support more than one body/language
+ if (bodies.size() > 1) {
+ throw new IllegalStateException("Only one body/lang supported");
+ }
+ bodies.clear();
+ bodies.add(body);
+ return handle;
}
public Object setLanguage(Object handle, String language) {
- // TODO: Auto-generated method stub
- return null;
+ List<String> langs = ((OpaqueExpression) handle).getLanguages();
+ // TODO: Support more than one body/language
+ if (langs.size() > 1) {
+ throw new IllegalStateException("Only one body/lang supported");
+ }
+ langs.clear();
+ langs.add(language);
+ return handle;
}
}
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=1426835
To unsubscribe from this discussion, e-mail: [[email protected]].