package me.chyxion.tigon.codegen.service.support;

import java.util.Map;
import me.chyxion.tigon.codegen.model.CodeGenArgs;
import me.chyxion.tigon.codegen.service.CodeGenerator;

/**
 * @version 0.0.1
 * @since 0.0.1
 * @author Shaun Chyxion <br>
 * chyxion@163.com <br>
 * Oct 6, 2014 1:17:03 PM
 */
public class ControllerCodeGen extends CodeGenerator {

    /**
     * {@inheritDoc}
     */
    @Override
    public boolean accept(Map<String, Object> dataModel) {
        return (Boolean) dataModel.get("genController");
    }

    /**
     * {@inheritDoc}
     */
    @Override
    public String process(Map<String, Object> dataModel, String module, String model) {
        return render(new CodeGenArgs(
                    CodeGenArgs.TARGET_CONTROLLER, 
                    "/codegen/controller.ftl", 
                    dataModel,
                    codeDir + dataModel.get("pkgDir") + 
                    "/controller/" +
                    model + "Controller.java"));
    }
}
