source: trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/Revaliases.pm @ 2444

Last change on this file since 2444 was 2444, checked in by nanardon, 4 years ago

Improve changes tracing

File size: 1.9 KB
Line 
1package LATMOS::Accounts::Bases::Sql::Revaliases;
2
3use 5.010000;
4use strict;
5use warnings;
6
7use base qw(LATMOS::Accounts::Bases::Sql::objects);
8use LATMOS::Accounts::Log;
9use LATMOS::Accounts::I18N;
10
11our $VERSION = (q$Rev: 341 $ =~ /^Rev: (\d+) /)[0];
12
13=head1 NAME
14
15LATMOS::Ad - Perl extension for blah blah blah
16
17=head1 SYNOPSIS
18
19  use LATMOS::Accounts::Bases;
20  my $base = LATMOS::Accounts::Bases->new('sql');
21  ...
22
23=head1 DESCRIPTION
24
25Account base access over standard unix file format.
26
27=head1 FUNCTIONS
28
29=cut
30
31=head2 new(%config)
32
33Create a new LATMOS::Ad object for windows AD $domain.
34
35domain / server: either the Ad domain or directly the server
36
37ldap_args is an optionnal list of arguments to pass to L<Net::LDAP>.
38
39=cut
40
41sub _object_table { 'revaliases' }
42
43sub _key_field { 'name' }
44
45sub _has_extended_attributes { 0 }
46
47sub _get_attr_schema {
48    my ($class, $base) = @_;
49
50    $class->SUPER::_get_attr_schema($base,
51        {
52            name            => { reference => 'user', inline => 1, },
53        }
54    )
55}
56
57sub ParentObject {
58    my ($self) = @_;
59
60    return $self->base->get_object('user', $self->id);
61}
62
63sub _create {
64    my ($class, $base, $id, %data) = @_;
65
66    my $uobj = $base->get_object('user', $id) or do {
67        $base->log(LA_ERR, 'Cannot create revaliases %s: no such user', $id);
68        return;
69    };
70    $data{exported} = $uobj->get_attributes('exported') || 0;
71
72    $class->SUPER::_create($base, $id, %data);
73}
74
751;
76
77__END__
78
79=head1 SEE ALSO
80
81L<LATMOS::Accounts::Bases::Sql::Aliases>, L<LATMOS::Accounts::Bases::Sql>
82
83=head1 AUTHOR
84
85Olivier Thauvin, E<lt>olivier.thauvin@latmos.ipsl.frE<gt>
86
87=head1 COPYRIGHT AND LICENSE
88
89Copyright (C) 2008, 2009 CNRS SA/CETP/LATMOS
90
91This library is free software; you can redistribute it and/or modify
92it under the same terms as Perl itself, either Perl version 5.10.0 or,
93at your option, any later version of Perl 5 you may have available.
94
95
96=cut
Note: See TracBrowser for help on using the repository browser.