MakeJavaMethod.java :  » JSON » am-code-generator » org » alamoraes » eaintegration » extensions » Java Open Source

Java Open Source » JSON » am code generator 
am code generator » org » alamoraes » eaintegration » extensions » MakeJavaMethod.java
/*
 * 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();
    }


}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.