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;

こんなんで。
まあ、必要ないか。