Ejemplo n.º 1
0
def main(reactor, *argv):
    config = Options()
    config.parseOptions(argv[1:])

    if config.subCommand == 'list':
        return (connect(reactor, config['port']).addCallback(
            Client.fetchTicket, config['id']).addCallback(listAttachments))
    elif config.subCommand == 'get':
        if config.subOptions['filename']:
            return (getRawAttachment(
                config.subOptions['id'],
                config.subOptions['filename']).addCallback(
                    sys.__stdout__.write))
        else:
            return (connect(reactor, config['port']).addCallback(
                Client.fetchTicket,
                config['id']).addCallback(getLastAttachment).addCallback(
                    sys.__stdout__.write))
    elif config.subCommand == 'apply':

        def apply(ticket):
            return (getLastAttachment(ticket).addCallback(
                applyPatch, reactor, config, ticket))

        return (connect(reactor, config['port']).addCallback(
            Client.fetchTicket, config['id']).addCallback(apply))
Ejemplo n.º 2
0
def main(reactor, *argv):
    config = Options()
    config.parseOptions(argv[1:])

    if config.subCommand == 'list':
        return (connect(reactor, config['port'])
                .addCallback(Client.fetchTicket, config['id'])
                .addCallback(listAttachments))
    elif config.subCommand == 'get':
        if config.subOptions['filename']:
            return (getRawAttachment(config.subOptions['id'], config.subOptions['filename'])
                    .addCallback(sys.__stdout__.write))
        else:
            return (connect(reactor, config['port'])
                    .addCallback(Client.fetchTicket, config['id'])
                    .addCallback(getLastAttachment)
                    .addCallback(sys.__stdout__.write))
    elif config.subCommand == 'apply':
        def apply(ticket):
            return (getLastAttachment(ticket)
                    .addCallback(applyPatch, reactor, config, ticket))
        return (connect(reactor, config['port'])
                .addCallback(Client.fetchTicket, config['id'])
                .addCallback(apply))
Ejemplo n.º 3
0
def getLastAttachment(response):
    return getRawAttachment(response['id'], response['attachments'][-1]['filename'])
Ejemplo n.º 4
0
def getLastAttachment(response):
    return getRawAttachment(response['id'], response['attachments'][-1]['filename'])