|  | <?xml version="1.0" encoding="utf-8" ?> | 
|  | <!-- | 
|  | Copyright (C) 2019 The Android Open Source Project | 
|  |  | 
|  | Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | you may not use this file except in compliance with the License. | 
|  | You may obtain a copy of the License at | 
|  |  | 
|  | http://www.apache.org/licenses/LICENSE-2.0 | 
|  |  | 
|  | Unless required by applicable law or agreed to in writing, software | 
|  | distributed under the License is distributed on an "AS IS" BASIS, | 
|  | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | See the License for the specific language governing permissions and | 
|  | limitations under the License. | 
|  | !--> | 
|  | <node name="/org/chromium/UpdateEngine"> | 
|  | <interface name="org.chromium.UpdateEngineInterface"> | 
|  | <annotation name="org.freedesktop.DBus.GLib.CSymbol" | 
|  | value="update_engine_service" /> | 
|  | <annotation name="org.freedesktop.DBus.GLib.ClientCSymbol" | 
|  | value="update_engine_client" /> | 
|  | <method name="AttemptUpdate"> | 
|  | <arg type="s" name="app_version" direction="in" /> | 
|  | <arg type="s" name="omaha_url" direction="in" /> | 
|  | </method> | 
|  | <!-- TODO(zeuthen,chromium:286399): Rename to AttemptUpdate and | 
|  | update Chrome and other users of the AttemptUpdate() method | 
|  | in lockstep. | 
|  | --> | 
|  | <method name="AttemptUpdateWithFlags"> | 
|  | <arg type="s" name="app_version" direction="in" /> | 
|  | <arg type="s" name="omaha_url" direction="in" /> | 
|  | <!-- See AttemptUpdateFlags enum in update_engine/dbus-constants.h. --> | 
|  | <arg type="i" name="flags" direction="in" /> | 
|  | </method> | 
|  | <method name="AttemptInstall"> | 
|  | <arg type="ay" name="request" direction="in"> | 
|  | <tp:docstring> | 
|  | The information about DLC modules that needs to be installed. | 
|  | </tp:docstring> | 
|  | <annotation name="org.chromium.DBus.Argument.ProtobufClass" | 
|  | value="dlcservice::DlcModuleList"/> | 
|  | </arg> | 
|  | </method> | 
|  | <method name="AttemptRollback"> | 
|  | <arg type="b" name="powerwash" direction="in" /> | 
|  | </method> | 
|  | <method name="CanRollback"> | 
|  | <arg type="b" name="can_rollback" direction="out" /> | 
|  | </method> | 
|  | <method name="ResetStatus"> | 
|  | </method> | 
|  | <method name="GetStatusAdvanced"> | 
|  | <arg type="ay" name="status" direction="out"> | 
|  | <tp:docstring> | 
|  | The current status serialized in a protobuf. | 
|  | </tp:docstring> | 
|  | <annotation name="org.chromium.DBus.Argument.ProtobufClass" | 
|  | value="update_engine::StatusResult"/> | 
|  | </arg> | 
|  | </method> | 
|  | <method name="RebootIfNeeded"> | 
|  | </method> | 
|  | <method name="SetChannel"> | 
|  | <arg type="s" name="target_channel" direction="in" /> | 
|  | <arg type="b" name="is_powerwash_allowed" direction="in" /> | 
|  | </method> | 
|  | <method name="GetChannel"> | 
|  | <arg type="b" name="get_current_channel" direction="in" /> | 
|  | <arg type="s" name="channel" direction="out" /> | 
|  | </method> | 
|  | <method name="SetCohortHint"> | 
|  | <arg type="s" name="cohort_hint" direction="in" /> | 
|  | </method> | 
|  | <method name="GetCohortHint"> | 
|  | <arg type="s" name="cohort_hint" direction="out" /> | 
|  | </method> | 
|  | <method name="SetP2PUpdatePermission"> | 
|  | <annotation name="org.freedesktop.DBus.GLib.CSymbol" | 
|  | value="update_engine_service_set_p2p_update_permission" /> | 
|  | <annotation name="org.freedesktop.DBus.GLib.ClientCSymbol" | 
|  | value="update_engine_client_set_p2p_update_permission" /> | 
|  | <arg type="b" name="enabled" direction="in" /> | 
|  | </method> | 
|  | <method name="GetP2PUpdatePermission"> | 
|  | <annotation name="org.freedesktop.DBus.GLib.CSymbol" | 
|  | value="update_engine_service_get_p2p_update_permission" /> | 
|  | <annotation name="org.freedesktop.DBus.GLib.ClientCSymbol" | 
|  | value="update_engine_client_get_p2p_update_permission" /> | 
|  | <arg type="b" name="enabled" direction="out" /> | 
|  | </method> | 
|  | <method name="SetUpdateOverCellularPermission"> | 
|  | <arg type="b" name="allowed" direction="in" /> | 
|  | </method> | 
|  | <method name="SetUpdateOverCellularTarget"> | 
|  | <arg type="s" name="target_version" direction="in" /> | 
|  | <arg type="x" name="target_size" direction="in" /> | 
|  | </method> | 
|  | <method name="GetUpdateOverCellularPermission"> | 
|  | <arg type="b" name="allowed" direction="out" /> | 
|  | </method> | 
|  | <method name="GetDurationSinceUpdate"> | 
|  | <arg type="x" name="usec_wallclock" direction="out" /> | 
|  | </method> | 
|  | <signal name="StatusUpdateAdvanced"> | 
|  | <arg type="ay" name="status" direction="out"> | 
|  | <tp:docstring> | 
|  | The current status serialized in a protobuf. | 
|  | </tp:docstring> | 
|  | <annotation name="org.chromium.DBus.Argument.ProtobufClass" | 
|  | value="update_engine::StatusResult"/> | 
|  | </arg> | 
|  | </signal> | 
|  | <method name="GetPrevVersion"> | 
|  | <arg type="s" name="prev_version" direction="out" /> | 
|  | </method> | 
|  | <method name="GetRollbackPartition"> | 
|  | <arg type="s" name="rollback_partition_name" direction="out" /> | 
|  | </method> | 
|  | <method name="GetLastAttemptError"> | 
|  | <arg type="i" name="last_attempt_error" direction="out" /> | 
|  | </method> | 
|  | </interface> | 
|  | </node> |