読者です 読者をやめる 読者になる 読者になる

slim3のgenタスクを作る

slim3はantでgen-controllerすると下記の3つが作成できる。

  • コントローラクラス
  • コントローラクラスのテストクラス
  • jspファイル

これらを自作で自動生成したいと思ったので調べた。
下記のようなTaskクラスを作成すれば自由に作成できる。きれいに設計されているので自分のやりたいところだけをコーディングできるようだ。

import org.slim3.gen.desc.ControllerDesc;
import org.slim3.gen.generator.ControllerGenerator;
import org.slim3.gen.generator.ControllerTestCaseGenerator;
import org.slim3.gen.generator.Generator;
import org.slim3.gen.printer.Printer;
import org.slim3.gen.task.GenControllerTask;

public class OreOreGenControllerTask extends GenControllerTask {

    @Override
    protected Generator careateControllerGenerator(ControllerDesc controllerDesc) {
        Generator generator = new ControllerGenerator(controllerDesc) {
            @Override
            public void generate(Printer p) {
                // print
            }
        };
        return generator;
    }

    @Override
    protected Generator careateControllerTestCaseGenerator(
            ControllerDesc controllerDesc) {
        Generator generator = new ControllerTestCaseGenerator(controllerDesc) {
            @Override
            public void generate(Printer p) {
                // print
            }
        };
        return generator;
    }
}