Catalyst-Plugin-RunAfterRequest

 view release on metacpan or  search on metacpan

lib/Catalyst/Plugin/RunAfterRequest.pm  view on Meta::CPAN

BEGIN {
  $Catalyst::Plugin::RunAfterRequest::VERSION = '0.04';
}
# ABSTRACT: run code after the response has been sent.

use Moose::Role;
use MooseX::Types::Moose qw/ArrayRef CodeRef/;

use namespace::autoclean;

has callbacks => (
    traits  => ['Array'],
    isa     => ArrayRef[CodeRef],
    default => sub { [] },
    handles => {
        run_after_request => 'push',
        _callbacks        => 'elements',
    },
);

after finalize => sub {
    my $self = shift;

    for my $callback ($self->_callbacks) {
        $self->$callback;
    }
};


1;

__END__
=pod



( run in 0.601 second using v1.01-cache-2.11-cpan-9b1e4054eb1 )