http://d.hatena.ne.jp/charsbar/20060925/1159110491



Plaggerの中でvalidateフックでも作るっていうのはどうでしょう。


追記:俺はvalidationって物に限っては自動生成って無理だと思うのです。もちろん、ある程度の規則にしたがって簡単に、ってのは可能だと思うのだけど。


思うにData::FormValidatorでもフックにつければいいんちゃうだろうか。フォームじゃないからD::FVは使えないかもしれんけどw



package Plagger::Plugin::MyPlugin;
use strict;
use base qw(Plagger::Plugin);

sub validation_profile
{
return +{
required => [ qw(....) ],
optional => [ qw(....) ],
}
}

こうやってそれぞれのプラグインでprofileを作って、



package Plagger;
use strict;
use Data::FormValidator;

$self->{dfv} = Data::FormValidator->new;

sub validate {
...
foreach my $plugin (@plugins) {
$self->{dfv}->check($plugin->config, $plugin->validation_profile);
}
}

Plaggerの中でcheck()を呼ぶ、と。