#!/usr/bin/env python
"""
Show OS/X application bundle information
"""

import os

from darwinist.application import Application, ApplicationTree, ApplicationError
from systematic.shell import Script

script = Script()
script.add_argument('-l','--list',action='store_true',help='List versions of all applications')
script.add_argument('-v','--version',action='store_true',help='Show application versions')
script.add_argument('paths',nargs='*',help='Application paths to parse')
args = script.parse_args()

if args.paths:
    for path in args.paths:
        try:
            app = Application(path)
            version = app.version
            print app.path.rstrip(os.sep), version

        except ApplicationError,emsg:
            script.error(emsg)
            continue

elif args.list:
    for app in ApplicationTree():
        try:
            version = app.version
            print app.path.rstrip(os.sep), version

        except ApplicationError,emsg:
            script.error(emsg)
            continue

else:
    script.usage_error('Required arguments missing')
