Jenkins pluginのコードを見ていてこんなのがあった
public FormValidation doCheckName(@QueryParameter String value) throws IOException, ServletException {
if (value.length() == 0) {
return FormValidation.error("Please set a name");
}
if (value.length() < 4) {
return FormValidation.warning("Isn't the name too short?");
}
return FormValidation.ok();
}
これは入力されたフォーム情報にValidationをかける関数だけれど、このdoCheckName
は別に拡張ポイントのオーバライドでもなんでもなくて、field名に合わせて動的にJenkinsが決めてくれるらしい。
つまりconfig.jellyにこんなふうに書いてあると
<f:entry title="Test" field="test">
<f:textbox />
</f:entry>
このtextboxのvalidationはdoCheckTest
が呼ばれることになっている。