| <?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="s" name="omaha_url" direction="in" /> | 
 |       <arg type="as" name="dlc_ids" direction="in"> | 
 |         <tp:docstring> | 
 |           The list of DLC IDs that needs to be installed. | 
 |         </tp:docstring> | 
 |       </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="SetDlcActiveValue"> | 
 |       <arg type="b" name="is_active" direction="in"> | 
 |         <tp:docstring> | 
 |           If the DLC is being set to active or inactive. | 
 |         </tp:docstring> | 
 |       </arg> | 
 |       <arg type="s" name="dlc_id" direction="in"> | 
 |         <tp:docstring> | 
 |           The ID of the DLC module that will be set to active/inactive. | 
 |         </tp:docstring> | 
 |       </arg> | 
 |     </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> |