Catalyst::Action::Role::ACL - Deprecated user role-based authorization action class


Catalyst-ActionRole-ACL documentation Contained in the Catalyst-ActionRole-ACL distribution.

Index


Code Index:

NAME

Top

Catalyst::Action::Role::ACL - Deprecated user role-based authorization action class

SYNOPSIS

Top

 sub foo
 :Local
 :ActionClass(Role::ACL)
 :RequiresRole(admin)
 :ACLDetachTo(denied)
 {
     my ($self, $c) = @_;
     ...
 }

 sub denied :Private {
     my ($self, $c) = @_;

     $c->res->status = '403';
     $c->body('Denied!');
 }

DESCRIPTION

Top

Provides a Catalyst reusable action (Catalyst::Manual::Actions) for user role-based authorization. ACLs are applied via the assignment of attributes to application action subroutines.

You are better using Catalyst::ActionRole::ACL to do this, as it plays nicely with other extensions. This package is maintained to allow compatibility with people using this in existing code, but will warn once when used.

AUTHOR

Top

David P.C. Wollmann <converter42@gmail.com>

BUGS

Top

This is new code. Find the bugs and report them, please.

COPYRIGHT & LICENSE

Top


Catalyst-ActionRole-ACL documentation Contained in the Catalyst-ActionRole-ACL distribution.

package Catalyst::Action::Role::ACL;
use Moose;
use namespace::autoclean;

extends 'Catalyst::Action';
with 'Catalyst::ActionRole::ACL';

use vars qw($VERSION);
$VERSION = '0.05'; # Note - Remember to keep in sync with Catalyst::ActionRole::ACL

{
    my $has_warned = 0;
    after BUILD => sub {
        my ($c) = @_;
        my $app = blessed($c) ? blessed($c) : $c;
        warn("Catalyst::Action::Role::ACL in $app is deprecated, please move you code to use Catalyst::ActionRole::ACL\n")
            unless $has_warned++;
    };
}

__PACKAGE__->meta->make_immutable;