1 package org.andromda.cartridges.meta.metafacades;
2
3 import org.andromda.metafacades.uml.OperationFacade;
4 import org.andromda.metafacades.uml.ParameterFacade;
5
6 import java.util.Iterator;
7
8
9 /***
10 * @author <a href="http://www.mbohlen.de">Matthias Bohlen </a>
11 * @since 25.02.2004
12 */
13 public class UMLOperationData
14 extends MethodData
15 {
16 /***
17 * Constructs a MethodData object from an OperationFacade.
18 *
19 * @param metafacadeName the name of the parent class
20 * @param operation the operation facade
21 */
22 public UMLOperationData(
23 final String metafacadeName,
24 final OperationFacade operation)
25 {
26 super(
27 metafacadeName,
28 operation.getVisibility(),
29 operation.isAbstract(),
30 operation.getReturnType().getFullyQualifiedName(),
31 operation.getName(),
32 operation.getDocumentation(" * "));
33
34 for (final Iterator iterator = operation.getArguments().iterator(); iterator.hasNext();)
35 {
36 final ParameterFacade parameter = (ParameterFacade)iterator.next();
37 addArgument(
38 new ArgumentData(
39 parameter.getType().getFullyQualifiedName(),
40 parameter.getName()));
41 }
42 }
43 }