intradata_get: croak instead of log+return
This commit is contained in:
parent
adb450343f
commit
15790db577
1 changed files with 31 additions and 66 deletions
|
@ -39,16 +39,11 @@ sub create_tree($$)
|
|||
my $year = shift;
|
||||
my $project_id = shift;
|
||||
|
||||
if (! -d "$basedir/$year/") {
|
||||
log ERROR, "No directory for year $year. Ask a root to create it.";
|
||||
return "No directory for year $year. Ask a root to create it.";
|
||||
}
|
||||
croak "No directory for year $year. Ask a root to create it." if (! -d "$basedir/$year/");
|
||||
|
||||
if (! -e "$basedir/$year/$project_id/") {
|
||||
mkdir "$basedir/$year/$project_id/";
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -59,10 +54,7 @@ sub grades_generate
|
|||
my $project_id = $args->{param}{id};
|
||||
my $year = $args->{param}{year} // LDAP::get_year;
|
||||
|
||||
if (! $project_id) {
|
||||
log ERROR, "No project_id given.";
|
||||
return "No project_id given";
|
||||
}
|
||||
croak "No project_id given." if (! $project_id);
|
||||
|
||||
if (! -e "$basedir/$year/$project_id/grades/") {
|
||||
mkdir "$basedir/$year/$project_id/grades/";
|
||||
|
@ -105,10 +97,7 @@ sub grades_generate
|
|||
if (exists $args->{files}{"grading.xml"}) {
|
||||
$grading = $args->{files}{"grading.xml"};
|
||||
}
|
||||
if (! $grading) {
|
||||
log ERROR, "Invalid grading.xml received!";
|
||||
return "Invalid grading.xml received!";
|
||||
}
|
||||
croak "Invalid grading.xml received!" if (! $grading);
|
||||
|
||||
$grading = Grading->new($grading);
|
||||
|
||||
|
@ -146,7 +135,7 @@ sub grades_generate
|
|||
$grading->reset();
|
||||
}
|
||||
|
||||
return "Ok";
|
||||
return 1;
|
||||
}
|
||||
|
||||
sub grades_new_bonus
|
||||
|
@ -157,10 +146,7 @@ sub grades_new_bonus
|
|||
my $delete = $args->{param}{delete};
|
||||
my $year = $args->{param}{year} // LDAP::get_year;
|
||||
|
||||
if (! $project_id) {
|
||||
log ERROR, "No project_id given.";
|
||||
return "No project_id given";
|
||||
}
|
||||
croak "No project_id given" if (! $project_id);
|
||||
|
||||
if (! -e "$basedir/$year/$project_id/traces/") {
|
||||
mkdir "$basedir/$year/$project_id/traces/";
|
||||
|
@ -240,7 +226,7 @@ sub grades_new_bonus
|
|||
}
|
||||
}
|
||||
|
||||
return "Ok";
|
||||
return 1;
|
||||
}
|
||||
|
||||
sub update_defense
|
||||
|
@ -250,26 +236,17 @@ sub update_defense
|
|||
my $project_id = $args->{param}{id};
|
||||
my $year = $args->{param}{year} // LDAP::get_year;
|
||||
|
||||
if (! $project_id) {
|
||||
log ERROR, "No project_id given.";
|
||||
return "No project_id given";
|
||||
}
|
||||
croak "No project_id given" if (! $project_id);
|
||||
|
||||
my $defense_id = $args->{param}{defense_id};
|
||||
|
||||
if (! $defense_id) {
|
||||
log ERROR, "No defense_id given.";
|
||||
return "No defense_id given";
|
||||
}
|
||||
croak "No defense_id given" if (! $defense_id);
|
||||
|
||||
my $defense;
|
||||
if (exists $args->{files}{"$defense_id.xml"}) {
|
||||
$defense = $args->{files}{"$defense_id.xml"};
|
||||
}
|
||||
if (! $defense) {
|
||||
log ERROR, "Invalid $defense_id.xml received!";
|
||||
return "Invalid $defense_id.xml received!";
|
||||
}
|
||||
croak "Invalid $defense_id.xml received!" if (! $defense);
|
||||
|
||||
log INFO, "Update $year/$project_id/defenses/$defense_id.xml";
|
||||
|
||||
|
@ -290,7 +267,7 @@ sub update_defense
|
|||
print $out $defense;
|
||||
close $out;
|
||||
|
||||
return "Ok";
|
||||
return 1;
|
||||
}
|
||||
|
||||
sub update_project
|
||||
|
@ -300,29 +277,23 @@ sub update_project
|
|||
my $project_id = $args->{param}{id};
|
||||
my $year = $args->{param}{year} // LDAP::get_year;
|
||||
|
||||
if (! $project_id) {
|
||||
log ERROR, "No project_id given.";
|
||||
return "No project_id given";
|
||||
}
|
||||
croak "No project_id given" if (! $project_id);
|
||||
|
||||
my $butler;
|
||||
if (exists $args->{files}{"butler.xml"}) {
|
||||
$butler = $args->{files}{"butler.xml"};
|
||||
}
|
||||
if (! $butler) {
|
||||
log ERROR, "Invalid butler.xml received!";
|
||||
return "Invalid butler.xml received!";
|
||||
}
|
||||
croak "Invalid butler.xml received!" if (! $butler);
|
||||
|
||||
log INFO, "Update $year/$project_id/butler.xml";
|
||||
|
||||
return $_ if (create_tree($year, $project_id));
|
||||
create_tree($year, $project_id);
|
||||
|
||||
open my $out, ">", "$basedir/$year/$project_id/butler.xml";
|
||||
print $out $butler;
|
||||
close $out;
|
||||
|
||||
return "Ok";
|
||||
return 1;
|
||||
}
|
||||
|
||||
sub update_trace
|
||||
|
@ -332,33 +303,21 @@ sub update_trace
|
|||
my $project_id = $args->{param}{id};
|
||||
my $year = $args->{param}{year} // LDAP::get_year;
|
||||
|
||||
if (! $project_id) {
|
||||
log ERROR, "No project_id given.";
|
||||
return "No project_id given";
|
||||
}
|
||||
croak "No project_id given" if (! $project_id);
|
||||
|
||||
my $rendu_id = $args->{param}{rendu};
|
||||
|
||||
if (! $rendu_id) {
|
||||
log ERROR, "No rendu_id given.";
|
||||
return "No rendu_id given";
|
||||
}
|
||||
croak "No rendu_id given" if (! $rendu_id);
|
||||
|
||||
my $login = $args->{param}{login};
|
||||
|
||||
if (! $login) {
|
||||
log ERROR, "No login given.";
|
||||
return "No login given";
|
||||
}
|
||||
croak "No login given" if (! $login);
|
||||
|
||||
my $trace;
|
||||
if (exists $args->{files}{"$login.xml"}) {
|
||||
$trace = $args->{files}{"$login.xml"};
|
||||
}
|
||||
if (! $trace) {
|
||||
log ERROR, "Invalid $login.xml received!";
|
||||
return "Invalid $login.xml received!";
|
||||
}
|
||||
croak "Invalid $login.xml received!" if (! $trace);
|
||||
|
||||
log INFO, "Update $year/$project_id/traces/$rendu_id/$login.xml";
|
||||
|
||||
|
@ -370,11 +329,11 @@ sub update_trace
|
|||
chmod 0755, "$basedir/$year/$project_id/traces/$rendu_id/";
|
||||
}
|
||||
|
||||
open my $out, ">", "$basedir/$year/$project_id/traces/$rendu_id/$login.xml";
|
||||
open my $out, ">", "$basedir/$year/$project_id/traces/$rendu_id/$login.xml" or croak("");
|
||||
print $out $trace;
|
||||
close $out;
|
||||
|
||||
return "Ok";
|
||||
return 1;
|
||||
}
|
||||
|
||||
sub delete_project
|
||||
|
@ -390,12 +349,18 @@ sub process_get
|
|||
my $type = $args->{param}{type};
|
||||
my $action = $args->{param}{action} // "update";
|
||||
|
||||
if (! exists $actions{$type}{$action}) {
|
||||
log WARN, "Unknown action '$action' for $type.";
|
||||
return "Unknown action '$action' for $type.";
|
||||
}
|
||||
croak "Unknown action '$action' for $type." if (! exists $actions{$type}{$action});
|
||||
|
||||
eval {
|
||||
$actions{$type}{$action}($args);
|
||||
};
|
||||
if ($@) {
|
||||
my $err = $@;
|
||||
log ERROR, $err;
|
||||
return $err;
|
||||
}
|
||||
return "Ok";
|
||||
|
||||
return $actions{$type}{$action}($args);
|
||||
}
|
||||
|
||||
Process::register("intradata_get", \&process_get);
|
||||
|
|
Reference in a new issue