Class-User-DBI
view release on metacpan or search on metacpan
lib/Class/User/DBI/RolePrivileges.pm view on Meta::CPAN
It will drop requests to add privileges that already exist for a given role.
Returns a count of privileges added, which may be less than the number passed if
one already existed.
=head2 delete_privileges
$rp->delete_privileges( 'goof_off', 'play' ); # Now we can only work.
Deletes from the role all privileges specified. Return value is the number
of privileges actually deleted, which may be less than the number of privileges
requested if any of the requested privileges don't exist for the object's target
role.
=head2 has_privilege
print "This role has the 'work' privilege."
if $rp->has_privilege( 'work' );
Returns true if a given privilege exists for the object's target role, and
false if not.
=head2 fetch_privileges
foreach my $priv ( $rp->fetch_privileges ) {
print "Role has $priv privilege\n";
}
Returns a list of privileges belonging to the object's target role.
An empty list means there are no privileges defined for this role.
=head2 get_role
my $role = $rp->get_role;
Just an accessor for reading the object's target role name.
=head1 DEPENDENCIES
The dependencies for this module are the same as for L<Class::User::DBI>, from
this same distribution. Refer to the documentation in that module for a full
description.
=head1 CONFIGURATION AND ENVIRONMENT
Please refer to the C<configure_db()> class method for this module for a
simple means of creating the table that supports this class.
All SQL for this distribution is contained in the L<Class::User::DBI::DB>
module.
=head1 DIAGNOSTICS
If you find that your particular database engine is not playing nicely with the
test suite from this module, it may be necessary to provide the database login
credentials for a test database using the same engine that your application
will actually be using. You may do this by setting C<$ENV{CUDBI_TEST_DSN}>,
C<$ENV{CUDBI_TEST_DATABASE}>, C<$ENV{CUDBI_TEST_USER}>,
and C<$ENV{CUDBI_TEST_PASS}>.
Currently the test suite tests against a SQLite database since it's such a
lightweight dependency for the testing. The author also uses this module
with several MySQL databases. As you're configuring your database, providing
its credentials to the tests and running the test scripts will offer really
good diagnostics if some aspect of your database tables proves to be at odds
with what this module needs.
=head1 INCOMPATIBILITIES
This module has only been tested on MySQL and SQLite database engines. If you
are successful in using it with other engines, please send me an email detailing
any additional configuration changes you had to make so that I can document
the compatibility, and improve the documentation for the configuration process.
=head1 BUGS AND LIMITATIONS
=head1 AUTHOR
David Oswald, C<< <davido at cpan.org> >>
=head1 BUGS
Please report any bugs or feature requests to
C<bug-class-user-dbi at rt.cpan.org>, or through the web interface at
L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Class-User-DBI>. I will be
notified, and then you'll automatically be notified of progress on your bug as
I make changes.
=head1 SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Class::User::DBI::RolePrivileges
You can also look for information at:
=over 4
=item * Class-User-DBI on Github
L<https://github.com/daoswald/Class-User-DBI.git>
=item * RT: CPAN's request tracker (report bugs here)
L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Class-User-DBI>
=item * AnnoCPAN: Annotated CPAN documentation
L<http://annocpan.org/dist/Class-User-DBI>
=item * CPAN Ratings
L<http://cpanratings.perl.org/d/Class-User-DBI>
=item * Search CPAN
L<http://search.cpan.org/dist/Class-User-DBI/>
( run in 2.602 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )