#!/usr/bin/env python
# vim: tabstop=4 softtabstop=4 shiftwidth=4 textwidth=80 smarttab expandtab

"""
* Copyright (C) 2012  Sangoma Technologies Corp.
* All Rights Reserved.
*
* Author(s)
* Johnny <jma@sangoma.com>
*
* This code is Sangoma Technologies Confidential Property.
* Use of and access to this code is covered by a previously executed
* non-disclosure agreement between Sangoma Technologies and the Recipient.
* This code is being supplied for evaluation purposes only and is not to be
* used for any other purpose.

"""


import sys
import os
import logging
from prod_def import *
from logging.handlers import SysLogHandler


def remove_file_warning(my_file, my_logger, my_filedesc):

    if os.path.exists(my_file):
        my_logger.warning('Removing %s: %s' % (my_filedesc, my_file))
        os.remove(my_file)


def main():
    formatter = logging.Formatter('[%(asctime)s] [%(name)s] [%(process)d] [%(levelname)s] %(message)s')
    logger = logging.getLogger('sng-reset-service')
    logger.setLevel(logging.INFO)

    syslog_handler = SysLogHandler('/dev/log')
    syslog_handler.setFormatter(formatter)
    logger.addHandler(syslog_handler)

    prod_def = ProdDef()
    service_name = sys.argv[1]
    global_pid = "/var/run/" + sys.argv[1] + ".pid"
    global_lock = "/var/lock/subsys/" + sys.argv[1]
    app_pid = prod_def.get_base_dir() + "/run/" + sys.argv[1] + ".pid"

    logger.warning('Resetting service %s' % (sys.argv[1]))

    remove_file_warning(global_pid, logger, "service global PID file")
    remove_file_warning(global_lock, logger, "service global lock file")
    remove_file_warning(app_pid, logger, "service application PID file")

    logger.warning('Done resetting service %s' % (sys.argv[1]))

    sys.exit(0)

if __name__ == '__main__':
    main()

