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 <daniel@ruoso.com>

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.

