}
}
public static TCGParameter createTCGParameter(ConnectableElement in_oParameter)
{
TCGParameter oRetParam = null;
if(in_oParameter.getType() instanceof org.eclipse.uml2.uml.Class)
{
// create complex parameter
org.eclipse.uml2.uml.Class oParameterClass = (org.eclipse.uml2.uml.Class)in_oParameter.getType();
if(oParameterClass.getAllAttributes().size() > 0)
{
TCGComplexParameter oComplexTCGParameter = GeneratedFactory.eINSTANCE.createTCGComplexParameter();
oComplexTCGParameter.setReference(in_oParameter);
// TODO entfernen?
// oComplexTCGParameter.setType(in_oParameter.getType());
// TODO bei rekursiven Strukturen sollten die Parameter erst "on demand" aufgebaut werden
for(Property oProperty : oParameterClass.getAllAttributes())
{
TCGParameter oParam = createTCGParameter(oProperty);
oComplexTCGParameter.getParameter().add(oParam);
}
oRetParam = oComplexTCGParameter;
} else {
oRetParam = createPrimitiveTCGParameter(in_oParameter);