App-LDAP
view release on metacpan or search on metacpan
lib/App/LDAP/Command/Import.pm view on Meta::CPAN
package App::LDAP::Command::Import;
use Modern::Perl;
use Moose;
with qw( App::LDAP::Role::Command
App::LDAP::Role::Bindable );
use Net::LDAP::LDIF;
sub run {
my ($self) = shift;
shift @ARGV;
process($_) for @ARGV;
}
sub process {
my ($file) = @_;
if (-f $file) {
say "import $file...";
my $ldif = Net::LDAP::LDIF->new($file, "r", onerror => 'die');
while (!$ldif->eof) {
my $entry = $ldif->read_entry;
my $msg = ldap()->add($entry);
warn $msg->error() if $msg->code;
}
} else {
say "$_ don\'t exist. skip.";
return;
}
}
1;
=pod
=head1 NAME
App::LDAP::Command::Import
=head1 SYNOPSIS
$ ldap import people.ldif
=cut
( run in 1.434 second using v1.01-cache-2.11-cpan-97f6503c9c8 )