1 package SL::DB::Helper::Metadata;
 
   6 use Rose::DB::Object::Metadata;
 
   7 use SL::DB::Helper::ConventionManager;
 
   9 use base qw(Rose::DB::Object::Metadata);
 
  11 sub convention_manager_class {
 
  12   return 'SL::DB::Helper::ConventionManager';
 
  15 sub default_manager_base_class {
 
  16   return 'SL::DB::Helper::Manager';
 
  21   $self->make_attr_auto_helpers unless $self->is_initialized;
 
  22   $self->SUPER::initialize(@_);
 
  25 sub make_attr_helpers {
 
  26   my ($self, %params) = @_;
 
  27   SL::DB::Helper::Attr::make($self->class, %params);
 
  30 sub make_attr_auto_helpers {
 
  32   SL::DB::Helper::Attr::auto_make($self->class);
 
  36   my($self, $object) = @_;
 
  38   # these are used as Rose internal canaries, don't wrap them
 
  39   die $object->error if UNIVERSAL::isa($object->error, 'Rose::DB::Object::Exception');
 
  41   SL::X::DBRoseError->throw(
 
  42     db_error   => $object->error,
 
  43     class      => ref($object),