#!/usr/bin/env python2
import os
import sys
import argparse
import logbook

# local imports
from connman_dispatcher import detector, execute_scripts_in_dirs

logger = logbook.Logger('connman-dispatcher')


def parse_args():
    parser = argparse.ArgumentParser()
    parser.add_argument('-p', '--path', action='append', required=True)
    return parser.parse_args()


def main():
    args = parse_args()
    detector.on('up', lambda: execute_scripts_in_dirs(args.path, 'up'))
    detector.on('down', lambda: execute_scripts_in_dirs(args.path, 'down'))
    if detector.is_online: execute_scripts_in_dirs(args.path, 'up')
    detector.run()


if __name__ == '__main__':
    syslog_handler = logbook.SyslogHandler()
    with syslog_handler.applicationbound():
        logger.info('started')
        main()
        logger.info('stopped')
