X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSchema.pm;h=72928fc57f1e32de3c707e64e7f35c2b25a76a5a;hb=89c0a5a2dd20b4973b39b17caff0843efc8a5e60;hp=315455568fce01d8c4d2d9dc7b32de4bbe296084;hpb=b795144302db2834acbac9551f787af38cd2ec49;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Schema.pm b/lib/DBIx/Class/Schema.pm index 3154555..72928fc 100644 --- a/lib/DBIx/Class/Schema.pm +++ b/lib/DBIx/Class/Schema.pm @@ -6,7 +6,7 @@ use warnings; use base qw/Class::Data::Inheritable/; use DBIx::Class; -__PACKAGE__->mk_classdata('_class_registrations' => {}); +__PACKAGE__->mk_classdata('class_registrations' => {}); =head1 NAME @@ -51,9 +51,13 @@ DBIx::Class::Schema - composable schemas sub register_class { my ($class, $name, $to_register) = @_; - my %reg = %{$class->_class_registrations}; + my %reg = %{$class->class_registrations}; $reg{$name} = $to_register; - $class->_class_registrations(\%reg); + $class->class_registrations(\%reg); +} + +sub registered_classes { + return values %{shift->class_registrations}; } sub load_classes { @@ -70,7 +74,7 @@ sub load_classes { sub compose_connection { my ($class, $target, @info) = @_; $class->setup_connection_class($target, @info); - my %reg = %{ $class->_class_registrations }; + my %reg = %{ $class->class_registrations }; while (my ($comp, $comp_class) = each %reg) { my $target_class = "${target}::${comp}"; $class->inject_base($target_class, $comp_class, $target);