| Catalyst-Model-Adaptor documentation | Contained in the Catalyst-Model-Adaptor distribution. |
Catalyst::Model::Factory::PerRequest - use a plain class as a Catalyst model, instantiating it once per Catalyst request
This module works just like
Catalyst::Model::Factory, except that a
fresh instance of your adapted class is once per Catalyst request, not
every time you ask for the object via $c->model.
You can customize your subclass just like
Catalyst::Model::Adaptor. Instead of
$app, though, you'll get $c, the current request context.
These methods are called by Catalyst, not by you:
Load your class
Create an instance of your class and return it.
For all the critical documentation, see Catalyst::Model::Adaptor.
| Catalyst-Model-Adaptor documentation | Contained in the Catalyst-Model-Adaptor distribution. |
package Catalyst::Model::Factory::PerRequest; use strict; use warnings; use MRO::Compat; use base 'Catalyst::Model::Factory'; our $VERSION = '0.10'; sub ACCEPT_CONTEXT { my ($self, $context, @args) = @_; my $id = '__'. ref $self; return $context->stash->{$id} ||= $self->next::method($context, @args); } 1; __END__