/[A3C]/bin/ldap2model.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /bin/ldap2model.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 102 by dpavlin, Thu May 1 13:41:44 2008 UTC revision 103 by dpavlin, Thu May 1 14:30:06 2008 UTC
# Line 6  use strict; Line 6  use strict;
6  #  #
7  # 04/30/08 20:55:21 CEST Dobrica Pavlinusic <dpavlin@rot13.org>  # 04/30/08 20:55:21 CEST Dobrica Pavlinusic <dpavlin@rot13.org>
8  #  #
9  # ./bin/ldap2model.pl data/all.ldif hrEduOrg  # ./bin/ldap2model.pl --model hrEduOrg --path data/all.ldif
10    
11    use lib 'lib';
12    
13    use Jifty;
14    use A3C::LDAP;
15  use Net::LDAP::Schema;  use Net::LDAP::Schema;
16  use File::Slurp;  use File::Slurp;
17  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
18    use Getopt::Long;
19    
20  my ( $path, $objectClass ) = @ARGV;  my ( $path, $objectClass );
   
 die "usage: $0 path/to/schema.ldif inetOrgPerson\n" unless $path && $objectClass;  
21    
22  my $schema = Net::LDAP::Schema->new;  GetOptions(
23  $schema->parse ( $path ) or die $schema->error;          'model|objectClass=s', => \$objectClass,
24            'path=s', => \$path,
25    );
26    
27    die "usage: $0 --model netOrgPerson [--path path/to/schema.ldif]\n" unless $objectClass;
28    
29    my $schema;
30    if ( $path ) {
31            $schema = Net::LDAP::Schema->new;
32            $schema->parse ( $path ) or die $schema->error;
33            warn "# loaded schema from $path\n";
34    } else {
35            my $l = A3C::LDAP->new;
36            $schema = $l->ldap->schema;
37    }
38    
39  die "$objectClass objectClass not found in $path\n" unless $schema->objectclass( $objectClass );  die "$objectClass objectClass not found in $path\n" unless $schema->objectclass( $objectClass );
40    

Legend:
Removed from v.102  
changed lines
  Added in v.103

  ViewVC Help
Powered by ViewVC 1.1.26