def hal_name_owner_changed(self, owner): for dev in self.devices: self.emit("switch-removed", dev) self.devices = [] if owner != "": self.Hal = HalManager() self.__enumerate() else: self.Hal = None
def HalRegisterNetDev(self, devicename): from blueman.main.HalManager import HalManager self.timer.reset() halmgr = HalManager() halmgr.register_netdev(devicename)
def HalUnregisterModemPortDev(self, rfcomm_device): from blueman.main.HalManager import HalManager self.timer.reset() halmgr = HalManager() dprint("** Unregistering modem") halmgr.unregister_dev(rfcomm_device)
def HalUnregisterModemPortAddr(self, address): from blueman.main.HalManager import HalManager self.timer.reset() halmgr = HalManager() dprint("** Unregistering modem") halmgr.unregister_addr(address)
def HalRegisterModemPort(self, rfcomm_device, bd_addr, ok, err): from blueman.main.HalManager import HalManager self.timer.reset() halmgr = HalManager() dprint("** Registering modem") halmgr.register(rfcomm_device, bd_addr, ok, err)
class Manager(GObject.GObject): __inst = None __gsignals__ = { 'switch-changed': (GObject.SignalFlags.NO_HOOKS, None, (GObject.TYPE_PYOBJECT, )), 'switch-added': (GObject.SignalFlags.NO_HOOKS, None, (GObject.TYPE_PYOBJECT, )), 'switch-removed': (GObject.SignalFlags.NO_HOOKS, None, (GObject.TYPE_PYOBJECT, )), } def __new__(cls): if not Manager.__inst: return super(Manager, cls).__new__(cls) return Manager.__inst def __init__(self): if not Manager.__inst: GObject.GObject.__init__(self) Manager.__inst = self self.devices = [] self.state = True self.HardBlocked = False dbus.SystemBus().watch_name_owner("org.freedesktop.Hal", self.hal_name_owner_changed) def hal_name_owner_changed(self, owner): for dev in self.devices: self.emit("switch-removed", dev) self.devices = [] if owner != "": self.Hal = HalManager() self.__enumerate() else: self.Hal = None def __enumerate(self): self.state = True devs = self.Hal.FindDeviceByCapability("killswitch") for dev in devs: try: sw = KillSwitch(dev) self.devices.append(sw) self.state &= sw.GetPower() self.emit("switch-added", sw) except WrongType: pass def SetGlobalState(self, state, **kwargs): dprint("Setting killswitches to", state) for dev in self.devices: print("Setting", dev.udi, "to", state) dev.SetPower(state) if len(self.devices) == 0: self.state = True else: self.state = state if "reply_handler" in kwargs: kwargs["reply_handler"]() def GetGlobalState(self): try: self.state &= self.devices[0] except: return self.state else: return self.state