#!/usr/bin/perl
#
# Run various cleanup operations on the distribution server
#

use strict;

use lib 'd:/app/tools/appuser/lib';
use lib 'd:/app/tools/common/lib';
use lib 'd:/app/tools/data_classes/lib';
use lib 'd:/app/tools/distribution/lib';
use lib 'd:/app/tools/job/lib';
use lib 'd:/app/tools/mediaserve/lib';
use lib 'd:/app/tools/metadata/lib';
use lib 'd:/app/tools/rps/lib';
use lib 'd:/app/tools/sysadmin/lib';

use Getopt::Std;
use File::Basename;

use lib '/app/tools/distribution/lib';
use Distribution::Cleanup::App;

my %opt;
usage() unless getopts( 'c:r:x:qlhdv', \%opt );

if ( $opt{h} ) {
    usage();
}

my $cleanup = new Distribution::Cleanup::App(
    command      => $opt{c},
    list         => $opt{l},
    report_email => $opt{r},
    error_email  => $opt{x},
    quiet        => $opt{q},
    verbose      => $opt{v},
    debug        => $opt{d}
);

$cleanup->run();

sub usage {
    my $prog = basename $0;

    print <<EofUSAGE;

usage: $prog [-c command] [-r report_email_address] [-x error_email_address] [-l] [-h] [-d] [-q] [-v]
            -c - specify cleanup command to run
            -l - list all cleanup commands
            -r - Send summary report to this email instead of STDOUT
            -x - Send error report to this email instead of STDERR
            -d - display debug information to STDERR
            -v - display verbose debug information to STDERR
            -q - Do not output summary report
            -h - display this screen
EofUSAGE

    exit 1;
}
