Perlbalでcamelize
Perlbalのプラグインかいててちょっと気になったのが、
Pluginロード時にcamelizeしてくれないこと。
例えば設定ファイルに
LOAD regex_vhosts
と書いてプラグインをロードさせた場合、
Perlbalは、Perlbal::Plugin::Regex_vhostsというモジュールを探します。
正確には
my $rv = $load->($fn) || $load->(lc $fn) || $load->(ucfirst lc $fn);
こういう順番で、モジュールを探しにいきます。
まずは、LOADで指定したまんまで探す
なかったらlcしたもので探す
なかったらucfirst lcしたもので探すです。
まあ、
LOAD RegexVhosts
ってかけばいいんですけど><
キャメライズできたほうがいいかなーとか思ったので。
Index: Perlbal.pm =================================================================== --- Perlbal.pm (revision 16170) +++ Perlbal.pm (working copy) @@ -47,6 +47,7 @@ use IO::Socket; use IO::Handle; use IO::File; +use String::CamelCase qw(camelize); $Perlbal::SYSLOG_AVAILABLE = eval { require Sys::Syslog; 1; }; $Perlbal::BSD_RESOURCE_AVAILABLE = eval { require BSD::Resource; 1; }; @@ -1014,7 +1015,7 @@ return $rv; }; - my $rv = $load->($fn) || $load->(lc $fn) || $load->(ucfirst lc $fn); + my $rv = $load->($fn) || $load->(lc $fn) || $load->(ucfirst lc $fn) || $load->(camelize($fn)); return $mc->err($@) unless $rv; $PluginCase{lc $fn} = $last_case;
こんなんで。
まあ、必要ないか。