Support running without network manager service.
Rework code to run without hardware manager service.
This commit is contained in:
@@ -30,31 +30,18 @@ B_AND_W_MODE = 1
|
||||
|
||||
class HardwareManager(object):
|
||||
def __init__(self):
|
||||
try:
|
||||
bus = dbus.SystemBus()
|
||||
proxy = bus.get_object(_HARDWARE_MANAGER_SERVICE,
|
||||
_HARDWARE_MANAGER_OBJECT_PATH)
|
||||
self._service = dbus.Interface(proxy, _HARDWARE_MANAGER_INTERFACE)
|
||||
except dbus.DBusException:
|
||||
self._service = None
|
||||
logging.error('Hardware manager service not found.')
|
||||
bus = dbus.SystemBus()
|
||||
proxy = bus.get_object(_HARDWARE_MANAGER_SERVICE,
|
||||
_HARDWARE_MANAGER_OBJECT_PATH)
|
||||
self._service = dbus.Interface(proxy, _HARDWARE_MANAGER_INTERFACE)
|
||||
|
||||
def set_display_mode(self, mode):
|
||||
if not self._service:
|
||||
logging.error('Cannot set display mode. Service not found.')
|
||||
|
||||
self._service.set_mode(mode)
|
||||
|
||||
def set_display_brightness(self, level):
|
||||
if not self._service:
|
||||
logging.error('Cannot set display brightness. Service not found.')
|
||||
|
||||
self._service.set_display_brightness(level)
|
||||
|
||||
def toggle_keyboard_brightness(self):
|
||||
if not self._service:
|
||||
logging.error('Cannot set keyboard brightness. Service not found.')
|
||||
|
||||
if self._service.get_keyboard_brightness():
|
||||
self._service.set_keyboard_brightness(False)
|
||||
else:
|
||||
@@ -69,6 +56,16 @@ def get_audio_manager():
|
||||
def get_network_manager():
|
||||
return _network_manager
|
||||
|
||||
_hardware_manager = HardwareManager()
|
||||
_audio_manager = AudioManager()
|
||||
_network_manager = NMClient()
|
||||
|
||||
try:
|
||||
_hardware_manager = HardwareManager()
|
||||
except dbus.DBusException, e:
|
||||
_hardware_manager = None
|
||||
logging.info('Hardware manager service not found.')
|
||||
|
||||
try:
|
||||
_network_manager = NMClient()
|
||||
except dbus.DBusException, e:
|
||||
_network_manager = None
|
||||
logging.info('Network manager service not found.')
|
||||
|
||||
Reference in New Issue
Block a user