Catalyst::Helper::Model::LDAP - Helper for LDAP models


Catalyst-Model-LDAP documentation Contained in the Catalyst-Model-LDAP distribution.

Index


Code Index:

NAME

Top

Catalyst::Helper::Model::LDAP - Helper for LDAP models

SYNOPSIS

Top

    script/myapp_create.pl model Person LDAP ldap.ufl.edu ou=People,dc=ufl,dc=edu dn=admin,dc=ufl,dc=edu mypass 1

DESCRIPTION

Top

Helper for the Catalyst LDAP model.

USAGE

Top

When creating a new LDAP model class using this helper, you can specify much of the configuration and have it filled automatically. Using the example from the SYNOPSIS section:

* Person

The name of the model. This is also used to determine the filename, e.g. lib/MyApp/Model/Person.pm.

* LDAP

The helper to use, i.e. this one.

* ldap.ufl.edu

The LDAP server's fully qualified domain name (FQDN). Can also be an IP address, e.g. 127.0.0.1.

* ou=People,dc=ufl,dc=edu

The base distinguished name (DN) for searching the directory.

* dn=admin,dc=ufl,dc=edu

The bind DN for connecting to the directory. This can be anyone that has permission to search under the base DN, as per your LDAP server's access control lists.

* mypass

The password for the specified bind DN.

* 1

Optionally uses TLS when binding to the LDAP server, for secure connections.

METHODS

Top

mk_compclass

Makes the LDAP model class.

mk_comptest

Makes tests for the LDAP model.

SEE ALSO

Top

* Catalyst::Manual
* Catalyst::Test
* Catalyst::Helper

AUTHORS

Top

* Daniel Westermann-Clark <danieltwc@cpan.org>
* Gavin Henry <ghenry@cpan.org> (TLS Helper option and documentation)

LICENSE

Top

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


Catalyst-Model-LDAP documentation Contained in the Catalyst-Model-LDAP distribution.
package Catalyst::Helper::Model::LDAP;

use strict;
use warnings;

sub mk_compclass {
    my ($self, $helper, $host, $base, $dn, $password, $start_tls) = @_;

    $helper->{host}      = $host      || '';
    $helper->{base}      = $base      || '';
    $helper->{dn}        = $dn        || '';
    $helper->{password}  = $password  || '';
    $helper->{start_tls} = $start_tls ? 1 : 0;

    $helper->render_file('modelclass', $helper->{file});

    return 1;
}

sub mk_comptest {
    my ($self, $helper) = @_;

    $helper->render_file('modeltest', $helper->{test});
}

1;

__DATA__

1;
__modeltest__
use strict;
use warnings;
use Test::More tests => 2;

use_ok('Catalyst::Test', '[% app %]');
use_ok('[% class %]');