if (
$class->debug and
- my %comps = $class->container->get_all_components
+ my $comps = $class->container->get_all_components($class)
) {
my $column_width = Catalyst::Utils::term_width() - 8 - 9;
my $t = Text::SimpleTable->new( [ $column_width, 'Class' ], [ 8, 'Type' ] );
- $t->row( $_ => ref($comps{$_}) ? 'instance' : 'class' ) for keys %comps;
+ $t->row( $_ => ref($comps->{$_}) ? 'instance' : 'class' ) for keys %$comps;
$class->log->debug( "Loaded components:\n" . $t->draw . "\n" );
}
$container->add_component( $_ ) for keys %$comps;
}
- return $container->get_all_components();
+ return $container->get_all_components($class);
}
=head2 $c->context_class
my %args = %{ $class->config || {} };
- my @container_classes = ( "${class}::Container", 'Catalyst::IOC::Container');
- unshift @container_classes, delete $args{container_class} if exists $args{container_class};
-
- my $container_class = Class::MOP::load_first_existing_class(@container_classes);
+ my $container_class = exists $args{container_class}
+ ? Class::MOP::load_class(delete $args{container_class})
+ : Class::MOP::load_first_existing_class("${class}::Container", 'Catalyst::IOC::Container')
+ ;
my $container = $container_class->new( %args, application_name => "$class", name => "$class" );
$class->container($container);
=cut
-sub setup_components {
- shift->container->setup_components();
-}
+sub setup_components { shift->container->setup_components }
=head2 locate_components