Exemplo n.º 1
0
def lookup(cmd, server, shortid, ignoreDone=False):
        # convert argument, which is shortened _id, to start/end range
        startkey = shortid
        endkey = shortid + 'Z'

        log.debug('lookup', 'Looking up from %s to %s' % (startkey, endkey))

        # FIXME: make the view calculate and sort by priority
        d = server.view('things-by-id-reversed', include_docs=True,
            startkey=startkey, endkey=endkey)

        def viewCb(things):
            things = list(things)
            if len(things) == 0:
                cmd.stdout.write("No thing found.\n")
                return

            # we let just one result go through, even if ignoreDone is True,
            # because our caller can show output about a task that is already done.
            if len(things) == 1:
                return things[0]

            if ignoreDone:
                things = [t for t in things if t.complete < 100]

            if len(things) > 1:
                for t in things:
                    cmd.stdout.write("%s\n" % display.display(t))
                cmd.stdout.write("%d things found, please be more specific.\n" %
                    len(things))
                return

            return things[0]
        d.addCallback(viewCb)
        return d
Exemplo n.º 2
0
def main(argv):
    log.init()
    log.logTwisted()
    log.adaptStandardLogging('paisley', 'paisley', None)

    # get twisted logging in our logging
    log.logTwisted()

    # use observer for standard logging paisley uses
    from twisted.python import log as tplog
    observer = tplog.PythonLoggingObserver()
    observer.start()

    # make sure argv, coming from the command line, is converted to
    # unicode
    argv = [a.decode('utf-8') for a in argv]

    c = GTD()

    log.debug('main', 'invoking parse')

    from twisted.web import error

    try:
        ret = c.parse(argv)
        log.debug('main', 'invoked parse, ret %r' % ret)
    except command.CommandExited, e:
        ret = e.status
        if ret != 0:
            sys.stderr.write('mushin: error: %s\n' % e.output)
Exemplo n.º 3
0
def main(argv):
    from mushin.common import log
    log.init()
    log.debug('maemo', 'main')

    from twisted.internet import gtk2reactor
    gtk2reactor.install()
    from twisted.internet import reactor

    # set paisley to non-strict since we only have simplejson on maemo
    from mushin.extern.paisley import pjson

    assert not pjson.STRICT

    log.logTwisted()

    reactor.callWhenRunning(start)

    reactor.run()
Exemplo n.º 4
0
def start():
    from mushin.common import log
    log.debug('main', 'starting')
    gtk.set_application_name('mushin')

    from mushin.maemo import start
    log.debug('main', 'creating window')
    window = start.StartWindow()
    log.debug('main', 'created window %r', window)
    window.connect('destroy', lambda _: gtk.main_quit())