#!python

'''
description:    Decode VOEvent db entry to xml: Runner
license:        APACHE 2.0
author:         Ronald van Haren, NLeSC (r.vanharen@esciencecenter.nl)
'''

import configargparse
from pyfrbcatdb import create_VOEvent
import os
import sys


def cli_parser():
    '''
    parse command line arguments:
    '''
    cfile = os.path.join(sys.prefix, 'etc', 'pyfrbcatdb', 'dbase.config')
    parser = configargparse.ArgumentParser(
      default_config_files=[cfile],
      description='Create VOEvent XML file from FRB database')
    parser.add('-c', '--my-config', required=False, is_config_file=True,
               help='config file path')
    parser.add('--dbName', required=True, help='name postgres database',
               env_var='dbNameFRBCat')
    parser.add('--dbHost', help='name postgres database',
               env_var='dbHostFRBCat')
    parser.add('--dbPort', help='name postgres database',
               env_var='dbPortFRBCat')
    parser.add('--dbUser', required=True, help='user postgres database',
               env_var='dbUserFRBCat')
    parser.add('--dbPassword', help='user postgres database password',
               env_var='dbPasswordFRBCat')
    parser.add('--log', type=str, default=os.path.join(
        os.path.expanduser("~"), 'pyfrbcatdb_create.log'
        ), help='log file, default=[HOME]/pyfrbcatdb_create.log')
    parser.add('frb_ids', metavar='frb_ids', type=int, nargs='+',
               help='List of frbs ids')
    results = parser.parse_args()
    return results


if __name__ == "__main__":
    results = cli_parser()
    create_VOEvent.create_VOEvent(results.frb_ids, results.dbName,
                                  results.dbHost, results.dbPort,
                                  results.dbUser, results.dbPassword)
