# Remember to update this in Catalyst::Runtime as well!
-our $VERSION = '5.89002';
+our $VERSION = '5.89003';
sub import {
my ( $class, @arguments ) = @_;
sub engine_class {
my $class = shift;
- $class->engine_loader->catalyst_engine_class(@_);
+ confess("Setting ->engine_class manually is no longer supported. XXX FIXME") if scalar @_;
+ $class->engine_loader->catalyst_engine_class;
}
sub setup_engine {
if ($ENV{MOD_PERL}) {
my $apache = $class->engine_loader->auto;
- # FIXME - Immutable
- $class->meta->add_method(handler => sub {
+
+ my $meta = find_meta($class);
+ my $was_immutable = $meta->is_immutable;
+ my %immutable_options = $meta->immutable_options;
+ $meta->make_mutable if $was_immutable;
+
+ $meta->add_method(handler => sub {
my $r = shift;
my $psgi_app = $class->psgi_app;
$apache->call_app($r, $psgi_app);
});
+
+ $meta->make_immutable(%immutable_options) if $was_immutable;
}
$class->engine( $engine->new );