blob: 0220de174561c4fc4351ed9966f4de245905142b [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
dbus-binding-tool -mode=glib-server -prefix=session_manager session_manager.xml
&gt; server.h
-->
<node name="/org/chromium/">
<interface name="org.chromium.SessionManagerInterface">
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
value="session_manager"/>
<method name="EmitLoginPromptReady">
<arg type="b" name="emitted" direction="out" />
</method>
<method name="EmitLoginPromptVisible">
</method>
<signal name="LoginPromptVisible">
</signal>
<method name="EnableChromeTesting">
<arg type="b" name="force_relaunch" direction="in" />
<arg type="as" name="extra_arguments" direction="in" />
<arg type="s" name="filepath" direction="out" />
</method>
<method name="StartSession">
<!-- Meant to be human-readable -->
<arg type="s" name="email_address" direction="in" />
<!-- Meant to be machine-readable, unused for now -->
<arg type="s" name="unique_identifier" direction="in" />
<arg type="b" name="done" direction="out" />
</method>
<method name="StopSession">
<!-- Meant to be machine-readable, unused for now -->
<arg type="s" name="unique_identifier" direction="in" />
<arg type="b" name="done" direction="out" />
</method>
<method name="StorePolicy">
<!-- Async annotation means that this method can respond asynchronously;
in the normal case, once the handler bound to this method call
returns, dbus-daemon will send a response back to the caller. -->
<annotation name="org.freedesktop.DBus.GLib.Async" value="true" />
<arg type="ay" name="policy_blob" direction="in" />
<arg type="b" direction="out">
<!-- This means that the caller doesn't have to pass in an
out-param to get the result of this call. In synchronous
operation, this is mapped to the return value of the
method call. In async mode, this is just another value
passed to the callback. -->
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<method name="RetrievePolicy">
<arg type="ay" name="policy_blob" direction="out" />
</method>
<method name="StorePolicyForUser">
<!-- This method is implemented asynchronously. -->
<annotation name="org.freedesktop.DBus.GLib.Async" value="true" />
<arg type="s" name="user_email" direction="in" />
<arg type="ay" name="policy_blob" direction="in" />
<arg type="b" direction="out">
<!-- This is the return value. -->
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<method name="RetrievePolicyForUser">
<arg type="s" name="user_email" direction="in" />
<arg type="ay" name="policy_blob" direction="out" />
</method>
<method name="StoreDeviceLocalAccountPolicy">
<!-- This method is implemented asynchronously. -->
<annotation name="org.freedesktop.DBus.GLib.Async" value="true" />
<arg type="s" name="account_id" direction="in" />
<arg type="ay" name="policy_blob" direction="in" />
<arg type="b" direction="out">
<!-- This is the return value. -->
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<method name="RetrieveDeviceLocalAccountPolicy">
<arg type="s" name="account_id" direction="in" />
<arg type="ay" name="policy_blob" direction="out" />
</method>
<method name="RetrieveSessionState">
<!-- started, stopping, stopped -->
<arg type="s" name="state" direction="out" />
</method>
<method name="RetrieveActiveSessions">
<!-- a dictionary mapping { username: sanitized_user_name }. -->
<arg type="a{ss}" direction="out">
<!-- This is the return value. -->
<annotation name="org.freedesktop.DBus.GLib.ReturnVal" value=""/>
</arg>
</method>
<signal name="SessionStateChanged">
<!-- started, stopping, stopped -->
<arg type="s" name="state" />
<!-- user whose session is starting or stopping (empty for guest) -->
<arg type="s" name="user" />
</signal>
<method name="LockScreen">
<!-- Lock screen -->
</method>
<method name="HandleLockScreenShown">
<!-- Handle notification from Chrome that the lock screen is visible -->
</method>
<method name="HandleLockScreenDismissed">
<!-- Handle notification from Chrome that the lock screen is hidden -->
</method>
<signal name="ScreenIsLocked">
<!-- Broadcast that the browser locked the screen -->
</signal>
<signal name="ScreenIsUnlocked">
<!-- Broadcast that the browser unlocked the screen -->
</signal>
<method name="RestartJob">
<!-- PID of the job to restart -->
<arg type="i" name="pid" direction="in" />
<!-- Command line arguments to restart the job with -->
<arg type="s" name="command_line" direction="in" />
<arg type="b" name="done" direction="out" />
</method>
<method name="RestartJobWithAuth">
<!-- PID of the job to restart -->
<arg type="i" name="pid" direction="in" />
<!-- Authentication cookie -->
<arg type="s" name="cookie" direction="in" />
<!-- Command line arguments to restart the job with -->
<arg type="s" name="command_line" direction="in" />
<arg type="b" name="done" direction="out" />
</method>
<method name="StartDeviceWipe">
<!-- Initiates a wipe of the device's state -->
<arg type="b" name="done" direction="out" />
</method>
<method name="SetFlagsForUser">
<!-- Sets the flags to be applied on next in-session restart -->
<annotation name="org.freedesktop.DBus.GLib.Async" value="true" />
<arg type="s" name="user_email" direction="in" />
<arg type="as" name="flags" direction="in" />
</method>
</interface>
</node>