Create a Text script named declaration on the type uml21.Parameter, and change the contents of the created uml21_Parameter.mqs to:
[#package tutorial.java]
[#metatype uml21.Parameter]
[#script public declaration]
${self.type.name} ${self.name}[#rtrim]
[/#script]
This text script output is designed to be inserted between the parenthesis of the Java method declaration. The rtrim directive is used to ignore the line feed.
Now re-open the script declaration defined on uml21.Operation and change its implementation to:
[#package tutorial.java]
[#metatype uml21.Operation]
[#script public declaration]
[#set parameters = self.inParameters.concat("declaration", ", ")]
public ${self.returnType.name} ${self.name}(${parameters}) {
return null; // TODO insert your code here
}
[/#script]
Now this script calls the script inParameters, which returns an MDWList,
and uses the concat method to:
declaration on each parameter of the list,", " as separator.The result of the concatenation is assigned to a local variable parameters.
Relaunch the generation and open the file Order.java:
public abstract class Order {
private String date;
private LineItem items;
private Customer customer;
public LineItem findLineItem(String productName) {
return null; // TODO insert your code here
}
}