From: Chris W. <la...@us...> - 2005-02-13 20:25:55
|
Update of /cvsroot/openinteract/OpenInteract2/lib/OpenInteract2/Setup In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3972/lib/OpenInteract2/Setup Modified Files: InitializeControllers.pm Log Message: instead of telling the controller to initialize its default actions, find all the classes in OI2::Observer::Controller and add them as observers Index: InitializeControllers.pm =================================================================== RCS file: /cvsroot/openinteract/OpenInteract2/lib/OpenInteract2/Setup/InitializeControllers.pm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** InitializeControllers.pm 24 Jan 2005 17:17:31 -0000 1.1 --- InitializeControllers.pm 13 Feb 2005 20:25:44 -0000 1.2 *************** *** 6,12 **** use base qw( OpenInteract2::Setup ); use Log::Log4perl qw( get_logger ); ! use OpenInteract2::Constants qw( :log ); use OpenInteract2::Controller; use OpenInteract2::Exception qw( oi_error ); my ( $log ); --- 6,13 ---- use base qw( OpenInteract2::Setup ); use Log::Log4perl qw( get_logger ); ! use OpenInteract2::Constants qw( LOG_INIT ); use OpenInteract2::Controller; use OpenInteract2::Exception qw( oi_error ); + use OpenInteract2::Util; my ( $log ); *************** *** 22,30 **** sub execute { my ( $self, $ctx ) = @_; my $controllers = $ctx->lookup_controller_config; while ( my ( $name, $info ) = each %{ $controllers } ) { OpenInteract2::Controller->register_factory_type( $name => $info->{class} ); } ! OpenInteract2::Controller->initialize_default_actions; } --- 23,38 ---- sub execute { my ( $self, $ctx ) = @_; + $log ||= get_logger( LOG_INIT ); my $controllers = $ctx->lookup_controller_config; while ( my ( $name, $info ) = each %{ $controllers } ) { OpenInteract2::Controller->register_factory_type( $name => $info->{class} ); } ! my @observers = OpenInteract2::Util->find_factory_subclasses( ! 'OpenInteract2::Observer::Controller', ! ); ! foreach my $observer ( @observers ) { ! OpenInteract2::Controller->add_observer( $observer ); ! $log->info( "Added observer '$observer' to the controller" ); ! } } *************** *** 46,51 **** =head1 DESCRIPTION ! This setup action just registers all controllers found and calls ! C<initialize_default_actions()> in L<OpenInteract2::Controller>. =head2 Setup Metadata --- 54,60 ---- =head1 DESCRIPTION ! This setup action just registers all controllers found, brings in all ! classes in the C<OpenInteract2::Observer::Controller> namespace and ! registers them as observers with L<OpenInteract2::Controller>. =head2 Setup Metadata |