Catalyst::Component::InstancePerContext - Return a new instance a component on each request
package MyComponent; use Moose; with 'Catalyst::Component::InstancePerContext'; sub build_per_context_instance{ my ($self, $c) = @_; # ... do your thing here return SomeModule->new(%args); }
Your consuming class must implement the following method.
The value returned by this call is what you will recieve when you call $c->component('YourComponent').
This role will add the following method to your consuming class.
If the context is not blessed, it will simple pass through the value of build_per_context_instance. If context is blessed it will look in the stash for an instance of the requested component and return that or, if the value is not found, the value returned by build_per_context_instance will be stored and return.
build_per_context_instance
stash
The idea behind this behavior is that a component can be built on a per-request basis, as the name of this module implies.
Moose, Moose::Role, Catalyst::Component
Guillermo Roditi (groditi) <groditi@cpan.org>
You may distribute this code under the same terms as Perl itself.
To install Catalyst::Component::InstancePerContext, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Catalyst::Component::InstancePerContext
CPAN shell
perl -MCPAN -e shell install Catalyst::Component::InstancePerContext
For more information on module installation, please visit the detailed CPAN module installation guide.