呼び出された場合、validate() メソッド (groups アノテーションで使用できるものなど) で特定の動作を行うことを検討しています。
Form<User> loginForm = form(User.class, User.Login.class).bindFromRequest();`
または
Form<User> registerForm = form(User.class, User.Register.class).bindFromRequest();
ユーザーモデル:
@Entity
public class User extends Model {
public interface Register {}
public interface Login{}
@Required(groups = {Register.class, Login.class})
public String username;
@Required(groups = {Register.class, Login.class})
public String password;
public List<ValidationError> validate() {
... // Here I would like to distinguish User.Login.class from User.Register.class
}
}
アプリケーションコントローラー
public static Result loginSubmit(){
Form<User> loginForm = form(User.class, User.Login.class).bindFromRequest();
}
public static Result registerSubmit(){
Form<User> registerForm = form(User.class, User.Register.class).bindFromRequest();
}