#!/usr/bin/env python
import os
from argparse import ArgumentParser
from pypromice.process import AWS

def parse_arguments():
    parser = ArgumentParser(description="AWS L3 processor")

    parser.add_argument('-c', '--config_file', type=str, required=True,
                        help='Path to config (TOML) file')
    parser.add_argument('-i', '--inpath', default='data', type=str, required=True, 
                        help='Path to input data')
    parser.add_argument('-o', '--outpath', default=None, type=str, required=False, 
                        help='Path where to write output')
    parser.add_argument('-v', '--variables', default=None, type=str, 
                        required=False, help='File path to variables look-up table')
    parser.add_argument('-m', '--metadata', default=None, type=str, 
                        required=False, help='File path to metadata')
    args = parser.parse_args()
    return args


if __name__ == '__main__':
    """Executed from the command line"""
    args = parse_arguments()

    station_name = args.config_file.split('/')[-1].split('.')[0] 
    station_path = os.path.join(args.inpath, station_name)

    if os.path.exists(station_path):
        pAWS = AWS(args.config_file, station_path, args.variables, args.metadata)    
    else:
        pAWS = AWS(args.config_file, args.inpath, args.variables, args.metadata)

    pAWS.process()
    pAWS.write(args.outpath)
    
else:
    """Executed on import"""
    pass
        
