#!/usr/bin/env python

# compressor.py
from subprocess import Popen, PIPE

def compress(value):
    """Compresses a string with the xz binary"""

    process = Popen(["xz", "--compress", "--force"], stdin=PIPE, stdout=PIPE)
    return process.communicate(value)[0]

def decompress(value):
    """Decompresses a string with the xz binary"""

    process = Popen(["xz", "--decompress", "--stdout", "--force"],
                    stdin=PIPE, stdout=PIPE)
    return process.communicate(value)[0]

def compress_file(path):
    """Compress the file at 'path' with the xz binary"""

    process = Popen(["xz", "--compress", "--force", "--stdout", path], stdout=PIPE)
    return process.communicate()[0]

# compressor.py

from optparse import OptionParser
from sys import argv
import base64
import cPickle
from cStringIO import StringIO
from os.path import basename

def load():
    ppds_compressed = base64.b64decode(ppds_compressed_b64)
    ppds_decompressed = decompress(ppds_compressed)
    ppds = cPickle.loads(ppds_decompressed)
    return ppds

def ls():
    binary_name = basename(argv[0])
    ppds = load()
    for key, value in ppds.iteritems():
        if key == 'ARCHIVE': continue
        for ppd in value[2]:
            print ppd.replace('"', '"' + binary_name + ':', 1)

def cat(ppd):
    # Ignore driver's name, take only PPD's
    ppd = ppd.split(":")[-1]
    # Remove also the index
    ppd = "0/" + ppd[ppd.find("/")+1:]

    ppds = load()
    ppds['ARCHIVE'] = StringIO(decompress(ppds['ARCHIVE']))

    if ppds.has_key(ppd):
        start = ppds[ppd][0]
        length = ppds[ppd][1]
        ppds['ARCHIVE'].seek(start)
        return ppds['ARCHIVE'].read(length)

def main():
    usage = "usage: %prog list\n" \
            "       %prog cat URI"
    version = "%prog 0.4.9\n" \
              "Copyright (c) 2010 Vitor Baptista.\n" \
              "This is free software; see the source for copying conditions.\n" \
              "There is NO warranty; not even for MERCHANTABILITY or\n" \
              "FITNESS FOR A PARTICULAR PURPOSE."
    parser = OptionParser(usage=usage,
                          version=version)
    (options, args) = parser.parse_args()

    if len(args) == 0 or len(args) > 2:
        parser.error("incorrect number of arguments")

    if args[0].lower() == 'list':
        ls()
    elif args[0].lower() == 'cat':
        if not len(args) == 2:
            parser.error("incorrect number of arguments")
        ppd = cat(args[1])
        if not ppd:
            parser.error("Printer '%s' does not have default driver!" % args[1])
        print ppd
    else:
        parser.error("argument " + args[0] + " invalid")

# PPDs Archive
ppds_compressed_b64 = "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"

if __name__ == "__main__":
    try:
        main()
    except (IOError, KeyboardInterrupt):
        # We don't want neither IOError nor KeyboardInterrupt throwing a
        # traceback into stdout.
        pass
