def SetSyspurpose(self, syspurpose_values, locale, sender): """ Set syspurpose values :param syspurpose_values: Dictionary with all syspurpose values :param locale: String with locale :param sender: Object representing client application that called this method :return: String with successfully set syspurpose values """ syspurpose_values = dbus_utils.dbus_to_python(syspurpose_values, expected_type=dict) locale = dbus_utils.dbus_to_python(locale, expected_type=str) Locale.set(locale) cp = self.build_uep({}) system_purpose = syspurpose.Syspurpose(cp) new_syspurpose_values = system_purpose.set_syspurpose_values( syspurpose_values) # Check if there was any conflict during three-way merge conflicts = {} for key, value in new_syspurpose_values.items(): if key in syspurpose_values and syspurpose_values[key] != value: conflicts[key] = value if len(conflicts) > 0: raise ThreeWayMergeConflict(conflict_fields=conflicts) return json.dumps(new_syspurpose_values)
def GetSyspurposeStatus(self, locale, sender=None): """ D-Bus method for getting system purpose status :param locale: string representing locale :param sender: object representing application which called this method :return: """ locale = dbus_utils.dbus_to_python(locale, expected_type=str) Locale.set(locale) cp = self.build_uep({}) system_purpose = syspurpose.Syspurpose(cp) syspurpose_status = system_purpose.get_syspurpose_status()["status"] return system_purpose.get_overall_status(syspurpose_status)
def GetValidFields(self, locale, sender=None): """ Method for getting valid syspurpose attributes and values :param locale: string with locale :param sender: object representing application which called this method :return: string representing dictionary with valid fields """ locale = dbus_utils.dbus_to_python(locale, expected_type=str) Locale.set(locale) cp = self.build_uep({}) system_purpose = syspurpose.Syspurpose(cp) valid_fields = system_purpose.get_owner_syspurpose_valid_fields() if valid_fields is None: # When it is not possible to get valid fields, then raise exception if self.is_registered() is False: raise dbus.DBusException( "Unable to get system purpose valid fields. System is not registered.", ) else: raise dbus.DBusException( "Unable to get system purpose valid fields.", ) else: return json.dumps(valid_fields)
def _sync_with_server(self, uep, uuid, on_date=None, *args, **kwargs): self.syspurpose_service = syspurpose.Syspurpose(uep) self.server_status = self.syspurpose_service.get_syspurpose_status( on_date)
def GetSyspurposeStatus(self, sender=None): cp = self.build_uep({}) systempurpose = syspurpose.Syspurpose(cp) syspurpose_status = systempurpose.get_syspurpose_status()['status'] return systempurpose.get_overall_status(syspurpose_status)
def GetSyspurposeStatus(self, sender=None): cp = inj.require(inj.CP_PROVIDER).get_consumer_auth_cp() systempurpose = syspurpose.Syspurpose(cp) syspurpose_status = systempurpose.get_syspurpose_status()['status'] return systempurpose.get_overall_status(syspurpose_status)