/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.alamoraes.eaintegration.extensions;
import java.util.List;
import java.util.Map;
import org.alamoraes.codegen.IGetMethodExtension;
import org.apache.velocity.context.Context;
import org.apache.velocity.util.introspection.Info;
/**
*
* @author Andr Moraes
*/
public class MakeJavaMethod implements IGetMethodExtension {
public String getPropertyName() {
return "mkJavaMethod";
}
public Object extend(Context context, String reference, Object object, Info info) {
Map<String,Object> methInfo = (Map<String,Object>)object;
StringBuilder sb = new StringBuilder();
sb.append(methInfo.get("visible").toString()).append(" ").append(methInfo.get("return").toString()).append(" ").append(methInfo.get("name").toString()).append("(");
boolean pending = false;
List<Object> params = (List<Object>)methInfo.get("params");
for(Object o: params) {
Map<String,Object> param = (Map<String,Object>)o;
if (pending) sb.append(", ");
sb.append(param.get("type")).append(" ").append(param.get("name"));
pending = true;
}
sb.append(")");
return sb.toString();
}
}
|