13 |
|
|
14 |
=head2 load_or_create |
=head2 load_or_create |
15 |
|
|
16 |
Perform canonicalization on C<load_or_create> |
Perform canonicalization on C<load_or_create> and loads subset of columns |
17 |
|
(which hopfully are indexes in model for performance reasons). |
18 |
|
|
19 |
=cut |
=cut |
20 |
|
|
36 |
); |
); |
37 |
} |
} |
38 |
|
|
39 |
my ( $id, $msg ) = $self->load_by_cols(%args); |
my %load_cols; |
40 |
|
|
41 |
|
if ( ref($self) eq 'A3C::Model::Person' ) { |
42 |
|
|
43 |
|
$load_cols{$_} = $args{$_} foreach ( qw/ |
44 |
|
uid |
45 |
|
hrEduPersonUniqueID |
46 |
|
mail |
47 |
|
/ ); |
48 |
|
|
49 |
|
} else { |
50 |
|
%load_cols = %args; |
51 |
|
} |
52 |
|
|
53 |
|
my ( $id, $msg ) = $self->load_by_cols(%load_cols); |
54 |
unless ( $self->id ) { |
unless ( $self->id ) { |
55 |
return $self->create(%args); |
return $self->create(%args); |
56 |
} |
} |