#!/usr/bin/env python
'''
Utility script to flag multiple jobs for deletion
'''

import sys
import os
if os.path.exists(os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', 'qtask')):
    sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), '..'))

import qtask


def usage():
    print __doc__
    print 'Usage: mqdel jobid'
    print '       mqdel jobid-jobid'
    sys.exit(1)

def qdel(job_start, job_stop=None):
    if not job_stop:
        job_stop = job_start

    for i in range(job_start, job_stop + 1):
        qtask.pipeline.runner.qdel(i)


if __name__ == '__main__':
    run = False
    for arg in sys.argv[1:]:
        try:
            if '-' in arg:
                start, stop = [int(x) for x in arg.split('-')]
                qdel (start, stop)
            else:
                start = int(arg)
                qdel (start)

            run = True
        except Exception, e:
            sys.stderr.write('Error processing jobids: %s\n\n' % arg)
            sys.stderr.write('%s\n' % str(e))

            sys.exit(1)

    if not run:
        usage()
