use LWP::UserAgent;
use constant PAGE_SIZE => 10;
+use constant FORMAT_EXTENSION => {
+ C => 'c',
+ CPP => 'cpp',
+ MONO => 'cs',
+ JAVA => 'java',
+ PASCAL => 'pas',
+ PERL => 'pl',
+ PYTHON => 'py',
+};
##################################################
}
sub purge {
+ get_logger->trace("Purging $_[0]");
for my $host (@purge_hosts) {
my $req = HTTP::Request->new(PURGE => "http://$host$_[0]");
$ua->request($req)
};
$meta->{tests} = decode_json $jobr->problem->tests if $meta->{runner} eq 'File';
- $meta->{ver} = {
- name => 'ver.cpp',
+ $meta->{files}{ver} = {
+ name => 'ver.' . FORMAT_EXTENSION->{$jobr->problem->verformat},
format => $jobr->problem->verformat,
content => $jobr->problem->versource,
} if $jobr->problem->verformat;
$errors ? (errors => $errors) : ()
});
- my $log = $jobr->contest ? 'ct/' . $jobr->contest . '/log' : 'log';
+ my $log = $jobr->contest ? 'ct/' . $jobr->contest->id . '/log' : 'log';
my $page = ($job + PAGE_SIZE - 1) / PAGE_SIZE;
purge "/$log/$job";