Apache-Sling
view release on metacpan or search on metacpan
lib/Apache/Sling/User.pm view on Meta::CPAN
}
else {
$authn->login_user();
if ( defined ${ $config->{'exists'} } ) {
$user =
new Apache::Sling::User( \$authn, $sling->{'Verbose'},
$sling->{'Log'} );
$success = $user->check_exists( ${ $config->{'exists'} } );
}
elsif ( defined ${ $config->{'add'} } ) {
$user =
new Apache::Sling::User( \$authn, $sling->{'Verbose'},
$sling->{'Log'} );
$success = $user->add(
${ $config->{'add'} },
${ $config->{'password'} },
$config->{'property'}
);
}
elsif ( defined ${ $config->{'update'} } ) {
$user =
new Apache::Sling::User( \$authn, $sling->{'Verbose'},
$sling->{'Log'} );
$success =
$user->update( ${ $config->{'update'} }, $config->{'property'} );
}
elsif ( defined ${ $config->{'change-password'} } ) {
$user =
new Apache::Sling::User( \$authn, $sling->{'Verbose'},
$sling->{'Log'} );
$success = $user->change_password(
${ $config->{'change-password'} },
${ $config->{'password'} },
${ $config->{'new-password'} },
${ $config->{'new-password'} }
);
}
elsif ( defined ${ $config->{'delete'} } ) {
$user =
new Apache::Sling::User( \$authn, $sling->{'Verbose'},
$sling->{'Log'} );
$success = $user->del( ${ $config->{'delete'} } );
}
elsif ( defined ${ $config->{'view'} } ) {
$user =
new Apache::Sling::User( \$authn, $sling->{'Verbose'},
$sling->{'Log'} );
$success = $user->view( ${ $config->{'view'} } );
}
else {
$user->help();
return 1;
}
Apache::Sling::Print::print_result($user);
}
return $success;
}
#}}}
#{{{sub update
sub update {
my ( $user, $act_on_user, $properties ) = @_;
my $res = Apache::Sling::Request::request(
\$user,
Apache::Sling::UserUtil::update_setup(
$user->{'BaseURL'}, $act_on_user, $properties
)
);
my $success = Apache::Sling::UserUtil::update_eval($res);
my $message = "User: \"$act_on_user\" ";
$message .= ( $success ? 'updated!' : 'was not updated!' );
$user->set_results( "$message", $res );
return $success;
}
#}}}
#{{{sub view
sub view {
my ( $user, $act_on_user ) = @_;
my $res = Apache::Sling::Request::request(
\$user,
Apache::Sling::UserUtil::exists_setup(
$user->{'BaseURL'}, $act_on_user
)
);
my $success = Apache::Sling::UserUtil::exists_eval($res);
my $message = (
$success
? ${$res}->content
: "Problem viewing user: \"$act_on_user\""
);
$user->set_results( "$message", $res );
return $success;
}
#}}}
1;
__END__
=head1 NAME
Apache::Sling::User - Methods for manipulating users in an Apache Sling system.
=head1 ABSTRACT
user related functionality for Sling implemented over rest APIs.
=head1 METHODS
=head2 new
Create, set up, and return a User Agent.
=head2 set_results
Set a suitable message and response for the user object.
=head2 add
( run in 0.752 second using v1.01-cache-2.11-cpan-0bb4e1dffa6 )