#!/usr/bin/env python
# PYTHON_ARGCOMPLETE_OK
# -*- Mode: python -*-

import os
import sys

import argparse
import argcomplete

parent, bin_dir = os.path.split(os.path.dirname(os.path.abspath(sys.argv[0])))
if os.path.exists(os.path.join(parent, 'ssh4plib')):
    sys.path.insert(0, parent)

from ssh4plib.manager import Manager


def main(args):
    if len(args) == 0:
        print('not found operation!')
        sys.exit()

    opt = args[0]
    if not(hasattr(Manager, opt)):
        print('unknown operation: ' + opt)
        sys.exit()

    opt_func = getattr(Manager, opt)
    opt_func(args[1:])


if __name__ == '__main__':
    parser = argparse.ArgumentParser(add_help=False)
    parser.add_argument("o", choices=["list", "get", "edit", "remove", "save", "version"])
    argcomplete.autocomplete(parser)
    args, unknown = parser.parse_known_args()

    main([args.o] + unknown)
