my $orig = shift;
my $c = shift;
- $c->log->warn("Setting config after setup has been run is not a good idea.")
- if ( @_ and $c->setup_finished );
+ croak('Setting config after setup has been run is not allowed.')
+ if ( @_ and $c->setup_finished );
$c->$orig(@_);
};
my @plugins = map { "$_ " . ( $_->VERSION || '' ) } $class->registered_plugins;
if (@plugins) {
- my $t = Text::SimpleTable->new(74);
+ my $column_width = Catalyst::Utils::term_width() - 6;
+ my $t = Text::SimpleTable->new($column_width);
$t->row($_) for @plugins;
$class->log->debug( "Loaded plugins:\n" . $t->draw . "\n" );
}
$class->setup_components;
if ( $class->debug ) {
- my $t = Text::SimpleTable->new( [ 63, 'Class' ], [ 8, 'Type' ] );
+ my $column_width = Catalyst::Utils::term_width() - 8 - 9;
+ my $t = Text::SimpleTable->new( [ $column_width, 'Class' ], [ 8, 'Type' ] );
for my $comp ( sort keys %{ $class->components } ) {
my $type = ref $class->components->{$comp} ? 'instance' : 'class';
$t->row( $comp, $type );
$class->setup_finalize;
}
+
+=head2 $app->setup_finalize
+
+A hook to attach modifiers to.
+Using C< after setup => sub{}; > doesn't work, because of quirky things done for plugin setup.
+Also better than C< setup_finished(); >, as that is a getter method.
+
+ sub setup_finalize {
+
+ my $app = shift;
+
+ ## do stuff, i.e., determine a primary key column for sessions stored in a DB
+
+ $app->next::method(@_);
+
+
+ }
+
+=cut
+
sub setup_finalize {
my ($class) = @_;
$class->setup_finished(1);
omega: Andreas Marienborg
+Oleg Kostyuk <cub.uanic@gmail.com>
+
phaylon: Robert Sedlacek <phaylon@dunkelheit.at>
rafl: Florian Ragwitz <rafl@debian.org>