1
0
mirror of https://github.com/samba-team/samba.git synced 2025-06-24 15:17:06 +03:00
samba-mirror/source3/python/printerdata.py
Tim Potter c9101c3b01 Initial version of printerdata_ex browsing.
(This used to be commit c201a61a52ffbaf1b1b70e25e0ef2b29a89f921c)
2002-09-06 07:44:21 +00:00

39 lines
1.2 KiB
Python

#
# A python module that maps printerdata to a dictionary. We define
# two classes. The printerdata class maps to Get/Set/Enum/DeletePrinterData
# and the printerdata_ex class maps to Get/Set/Enum/DeletePrinterDataEx
#
import spoolss
class printerdata:
def __init__(self, host, creds = {}):
self.hnd = spoolss.openprinter(host, creds = creds)
def keys(self):
return self.hnd.enumprinterdata().keys()
def __getitem__(self, key):
return self.hnd.getprinterdata(key)['data']
def __setitem__(self, key, value):
# Store as REG_BINARY for now
self.hnd.setprinterdata({"key": "", "value": key, "type": 3,
"data": value})
class printerdata_ex:
def __init__(self, host, creds = {}):
self.hnd = spoolss.openprinter(host, creds = creds)
def keys(self):
return self.hnd.enumprinterdataex("PrinterDriverData").keys()
def __getitem__(self, key):
return self.hnd.getprinterdataex("PrinterDriverData", key)['data']
def __setitem__(self, key, value):
# Store as REG_BINARY for now
self.hnd.setprinterdataex({"key": "PrinterDriverData", "value": key, "type": 3,
"data": value})