[Dbix-class] Retrieving list of loaded modules in MyApp::Model::Schema

RA Jones ra.jones at dpw.clara.co.uk
Thu Mar 22 23:12:03 GMT 2007


Following on from another thread about how to handle the debugobj, I've 
run into another conundrum. In trying out various SQL profiling 
configurations, I selectively load or comment out the base modules in 
MyApp.pm:

use Catalyst qw(lots of modules);

In doing so I can test for their existence in the controllers:

if ( $c->registered_plugins('DBIx::Class::QueryLog') ) {
  do_something_with_DBIC-QueryLog
}

But how can I do the equivalent in the Model/Schema class, which does 
not know anything about $c. I want to do something like:

use base 'Catalyst::Model::DBIC::Schema';

sub new {
   my $self = shift->NEXT::new( @_ );

      if ( module_x is loaded ) { setup storage on x }
   elsif ( module_y is loaded ) { setup storage on y }

   return $self;
}

Hope that makes sense.
-- 
Richard Jones
Leeds, UK
ra.jones(at)dpw.clara.co.uk



More information about the Dbix-class mailing list