U
    $x]
                     @   sH   d dl Z d dlZ d dlZ ddlmZmZ G dd de jjZdd Z	dS )    N   )_debugprintset_debugprint_fnc                   @   s:   e Zd ZdZdZdZdd Zejj	eddddd	 Z
d
S )PrinterDriversInstallerz#/com/redhat/PrinterDriversInstallerz"com.redhat.PrinterDriversInstallerc                 C   s0   || _ tjj| j|d}tjj| || j d S )N)bus)r   dbusserviceZBusNameDBUS_OBJObject__init__	DBUS_PATH)selfr   Zbus_name r   ;/usr/lib/python3/dist-packages/cupshelpers/installdriver.pyr       s    z PrinterDriversInstaller.__init__Zsss)reply_handlererror_handler)Zin_signatureZasync_callbacksc                 C   st   t  }|dd}t |d}d}	d||f g}
d}tdt|	t|
t|f  |jt |	|
|||dd	 d S )
Nzorg.freedesktop.PackageKitz/org/freedesktop/PackageKitz!org.freedesktop.PackageKit.Modifyr   zMFG:%s;MDL:%s;zhide-finishedz*Calling InstallPrinterDrivers (%s, %s, %s)i  )r   r   Ztimeout)r   Z
SessionBus
get_object	Interfacer   reprZInstallPrinterDriversZUInt32)r   ZmfgZmdlcmdr   r   r   objproxyZxidZ	resourcesZinteractionr   r   r   InstallDrivers%   s$     z&PrinterDriversInstaller.InstallDriversN)__name__
__module____qualname__r   
DBUS_IFACEr	   r   r   r   methodr   r   r   r   r   r      s   r   c                  C   sD   t  } dd l}| tjtj}t |tj}t	|
ddd d S )Nr   ZMFGZMDLZCMD)r   Z	SystemBussysr   r   r	   r   r   r   printr   )r   r   r   r   r   r   r   client_test:   s    r    )
r   Z	dbus.glibZdbus.service r   r   r   r
   r   r    r   r   r   r   <module>   s
   