diff --git a/AlgebraicDataflowArchitectureModel/src/generators/CodeGeneratorFromDataFlowGraph.java b/AlgebraicDataflowArchitectureModel/src/generators/CodeGeneratorFromDataFlowGraph.java index 495452c..57d42bb 100644 --- a/AlgebraicDataflowArchitectureModel/src/generators/CodeGeneratorFromDataFlowGraph.java +++ b/AlgebraicDataflowArchitectureModel/src/generators/CodeGeneratorFromDataFlowGraph.java @@ -778,12 +778,16 @@ // Declare an update method in the type of the destination resource. ArrayList parameters = new ArrayList<>(); + int v = 1; for (Expression exp: dstResPath.getPathParams()) { if (exp instanceof Variable) { Variable pathVar = (Variable) exp; - VariableDeclaration pathParam = langSpec.newVariableDeclaration(pathVar.getType(), pathVar.getName()); + String varName = "self" + (v > 1 ? v : ""); +// String varName = pathVar.getName(); + VariableDeclaration pathParam = langSpec.newVariableDeclaration(pathVar.getType(), varName); parameters.add(pathParam); // A path parameter to identify the self resource. } + v++; } for (Selector selector: ch.getAllSelectors()) { if (selector.getExpression() instanceof Variable) { diff --git a/AlgebraicDataflowArchitectureModel/src/generators/JavaCodeGenerator.java b/AlgebraicDataflowArchitectureModel/src/generators/JavaCodeGenerator.java index 00efe62..afef24a 100644 --- a/AlgebraicDataflowArchitectureModel/src/generators/JavaCodeGenerator.java +++ b/AlgebraicDataflowArchitectureModel/src/generators/JavaCodeGenerator.java @@ -533,12 +533,16 @@ } else { // Declare an update method in the type of the destination resource. ArrayList params = new ArrayList<>(); + int v = 1; for (Expression exp: out.getResource().getPathParams()) { if (exp instanceof Variable) { Variable pathVar = (Variable) exp; - VariableDeclaration pathParam = new VariableDeclaration(pathVar.getType(), pathVar.getName()); + String varName = "self" + (v > 1 ? v : ""); +// String varName = pathVar.getName(); + VariableDeclaration pathParam = new VariableDeclaration(pathVar.getType(), varName); params.add(pathParam); // A path parameter to identify the self resource. } + v++; } for (Selector selector: ch.getAllSelectors()) { if (selector.getExpression() instanceof Variable) { diff --git a/AlgebraicDataflowArchitectureModel/src/generators/JerseyCodeGenerator.java b/AlgebraicDataflowArchitectureModel/src/generators/JerseyCodeGenerator.java index bb2c4b4..4cf0653 100644 --- a/AlgebraicDataflowArchitectureModel/src/generators/JerseyCodeGenerator.java +++ b/AlgebraicDataflowArchitectureModel/src/generators/JerseyCodeGenerator.java @@ -1059,14 +1059,16 @@ for (Expression pathParam: resPath.getPathParams()) { if (pathParam instanceof Variable) { Variable var = (Variable) pathParam; - String paramName = var.getName(); + String paramName = "self" + (v > 1 ? v : ""); +// String paramName = var.getName(); params.add("{" + paramName + "}"); VariableDeclaration param = new VariableDeclaration(var.getType(), paramName); if (isRestAPI) param.addAnnotation(new Annotation("PathParam", "\"" + paramName + "\"")); rootParams.add(param); } else if (pathParam instanceof Term) { Term var = (Term) pathParam; - String paramName = "v" + v; + String paramName = "self" + (v > 1 ? v : ""); +// String paramName = "v" + v; params.add("{" + paramName + "}"); VariableDeclaration param = new VariableDeclaration(var.getType(), paramName); if (isRestAPI) param.addAnnotation(new Annotation("PathParam", "\"" + paramName + "\""));