
-"Oc           @   s   d  Z  d g Z d d l m Z d d l Z d e j e j j	 f d     YZ
 d d d  Z d Z e
 d e j e j j f i e d	 6e d
 6 Z d S(   s:   Support code for implementing D-Bus services via GObjects.t   ExportedGObjecti(   t   GObjectNt   ExportedGObjectTypec           B   s   e  Z d  Z d   Z RS(   s   A metaclass which inherits from both GObjectMeta and
    `dbus.service.InterfaceType`. Used as the metaclass for `ExportedGObject`.
    c         C   s9   t  j j |  | | |  t j j j |  | | |  d  S(   N(   t   gobjectt   GObjectMetat   __init__t   dbust   servicet   InterfaceType(   t   clst   namet   basest   dct(    (    s8   /usr/lib/python2.7/dist-packages/dbus/gobject_service.pyR   ,   s    (   t   __name__t
   __module__t   __doc__R   (    (    (    s8   /usr/lib/python2.7/dist-packages/dbus/gobject_service.pyR   (   s   c         K   s|   | j  d d  } | j  d d  } | d k	 r@ | j |  n  t j j |  |  t j j j |  d | d | d | d S(   s:  Initialize an exported GObject.

    :Parameters:
        `conn` : dbus.connection.Connection
            The D-Bus connection or bus
        `object_path` : str
            The object path at which to register this object.
    :Keywords:
        `bus_name` : dbus.service.BusName
            A bus name to be held on behalf of this object, or None.
        `gobject_properties` : dict
            GObject properties to be set on the constructed object.

            Any unrecognised keyword arguments will also be interpreted
            as GObject properties.
        t   bus_namet   gobject_propertiest   connt   object_pathN(	   t   popt   Nonet   updateR   R   R   R   R   t   Object(   t   selfR   R   t   kwargsR   R   (    (    s8   /usr/lib/python2.7/dist-packages/dbus/gobject_service.pyt   ExportedGObject__init__1   s    s)   A GObject which is exported on the D-Bus.R   R   (   R   t   __all__t   gi.repositoryR   R   t   dbus.serviceR   R   R   R   R   R   R   t   ExportedGObject__doc__R   R    (    (    (    s8   /usr/lib/python2.7/dist-packages/dbus/gobject_service.pyt   <module>   s   	"	
