package LATMOS::Accounts::Bases::Sql::Revaliases; use 5.010000; use strict; use warnings; use base qw(LATMOS::Accounts::Bases::Sql::objects); use LATMOS::Accounts::Log; use LATMOS::Accounts::I18N; our $VERSION = (q$Rev: 341 $ =~ /^Rev: (\d+) /)[0]; =head1 NAME LATMOS::Ad - Perl extension for blah blah blah =head1 SYNOPSIS use LATMOS::Accounts::Bases; my $base = LATMOS::Accounts::Bases->new('sql'); ... =head1 DESCRIPTION Account base access over standard unix file format. =head1 FUNCTIONS =cut =head2 new(%config) Create a new LATMOS::Ad object for windows AD $domain. domain / server: either the Ad domain or directly the server ldap_args is an optionnal list of arguments to pass to L. =cut sub _object_table { 'revaliases' } sub _key_field { 'name' } sub _has_extended_attributes { 0 } sub _get_attr_schema { my ($class, $base) = @_; $class->SUPER::_get_attr_schema($base, { name => { reference => 'user', inline => 1, }, } ) } sub _create { my ($class, $base, $id, %data) = @_; my $uobj = $base->get_object('user', $id) or do { $base->log(LA_ERR, 'Cannot create revaliases %s: no such user', $id); return; }; $data{exported} = $uobj->get_attributes('exported') || 0; $class->SUPER::_create($base, $id, %data); } 1; __END__ =head1 SEE ALSO L, L =head1 AUTHOR Olivier Thauvin, Eolivier.thauvin@latmos.ipsl.frE =head1 COPYRIGHT AND LICENSE Copyright (C) 2008, 2009 CNRS SA/CETP/LATMOS This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available. =cut