NAME
   MooseX::AuthorizedMethods - Syntax sugar for authorized methods

SYNOPSIS
     package Foo::Bar;
     use MooseX::AuthorizedMethods; # includes Moose

 has user => (is => 'ro');

 authorized foo => ['foo'], sub {
        # this is going to happen only if the user has the 'foo' role
     };

DESCRIPTION
   This method exports the "authorized" declarator that makes a
   verification if the user has the required permissions before the acual
   invocation. The default verification method will take the "user" method
   result and call "roles" to list the roles given to that user.

DECLARATOR
   authorized $name => [qw(required permissions)], $code
       This declarator will use the default verifier to check if the user
       has one of the given roles, it will die otherwise.

CUSTOM VERIFIERS
   The default verifier used is
   MooseX::Meta::Method::Authorized::CheckRoles, you might send an
   additional "verifier" option to the declarator with another object or
   class. A verifier is simply a duck type with the "authorized_do" method
   that is called as:

     $verifier->authorized_do($method, $code, @_)

   It is expected that the verifier code die if the user doesn't fulfill
   the authorization requests.

AUTHORS
   Daniel Ruoso <[email protected]>

COPYRIGHT AND LICENSE
   Copyright 2010 by Daniel Ruoso et al

   This library is free software; you can redistribute it and/or modify it
   under the same terms as Perl itself.