#!/home/jimmy/repos/SPT/venv/bin/python
import sys

import spatialprofilingtoolbox as spt


class ExposedInfo:
    info = {
        'computational-workflows' : list(spt.workflows.keys()),
        'version' : spt.__version__,
    }

    @staticmethod
    def print(handle):
        if handle in ExposedInfo.info:
            item = ExposedInfo.info[handle]
            if isinstance(item, list):
                printable = '\n'.join([str(element) for element in item])
            else:
                printable = str(item)
            print(printable)
            return

        for handle in list(ExposedInfo.info.keys()):
            print(handle)

if __name__=='__main__':
    cli_arguments = sys.argv
    number_arguments = len(cli_arguments)
    if number_arguments == 2:
        argument = cli_arguments[1]
        ExposedInfo.print(argument)
    else:
        ExposedInfo.print(None)
