[Gelistirici] [RFC] comar.Link()

Bahadır Kandemir bahadir at pardus.org.tr
27 Eki 2008 Pzt 00:44:36 EET


25 Eki 2008 Cts tarihinde, Bahadır Kandemir şunları yazmıştı: 
> COMAR 1.0'da kullandığımız bir API vardı hatırlarsanız. 2.0'da DBus'a
> geçtiğimizde, neden hatırlamıyorum, comar-api modülünü DBus uyumlu hale
> getirmek yerine tüm işleri Python-DBus modülüne bırakmıştım, hata
> yapmışım.

Selamlar,

Link() sınıfını COMAR 2.0'a uyumlu hale getirip comar-api'ye ekledim:

    import comar
    link = comar.Link()

    # Get a list of packages that provide system.service method
    packages = list(link.System.Service)

    # Start a service
    link.System.Service["kdebase"].start()

    # Stop all services, ignore replies from packages.
    link.System.Service.stop(quiet=True)

Asenkron çağrı ise şu şekilde yapılabiliyor:

    import gobject
    import dbus.mainloop.glib
    dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
    mainloop = gobject.MainLoop()

    import comar
    link = comar.Link()

    # Make an asynchronous call to get service information
    def handler(package, exception, result):
        if exception:
            print "%s error: %s" % (package, exception)
        else:
            print "%s result: %s" % (package, result)
    link.System.Service.info(async=handler)

    mainloop.run()
-------------- sonraki bölüm --------------
A non-text attachment was scrubbed...
Name: kullanılamıyor
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
URL: <http://liste.pardus.org.tr/gelistirici/attachments/20081027/bae427fe/attachment-0002.pgp>


Gelistirici mesaj listesiyle ilgili daha fazla bilgi