Shipped DBD::PassThrough 0.02
DBD::PassThrough という module を shipped です。
DBIx::* なモジュールの中には $dbh を引数としてうけとらないものが多いのですが、これを無理矢理うけとれるようにするという画期的なモジュールです。
my $dbh = DBI->connect('dbi:PassThrough:', '', '', { pass_through_source => $orig_dbh, });
という風に、$orig_dbh をわたすと、$dbh への操作がすべて $orig_dbh にデリゲートされます。
この機構により、DBIx::Handler のような、$dbh をうけとってくれない DBIx::* モジュールを利用する場合にも、無理矢理ねじこむことが可能となります。
使用例は以下のとおり。
my $handler = DBIx::Handler->new( 'dbi:PassThrough:', '', '', { pass_through_source => $orig_dbh } );
まあ、むりやりねじこみたいとき専用なんで、テストとかそういう用途がメインです。はい。