<!DOCTYPE node PUBLIC
"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">

  <interface name="org.freedesktop.URfkill.Killswitch">
    <doc:doc>
      <doc:description>
        <doc:para>
          Objects implementing this interface represent different types
          of killswitches and are discovered through the
          <doc:tt>org.freedesktop.URfkill.Killswitch</doc:tt> interface
          on the <doc:tt>/org/freedesktop/URfkill/TYPENAME</doc:tt>
          object on the D-Bus system bus service with the well-known
          name <doc:tt>org.freedesktop.URfkill</doc:tt>. The TYPENAME
          could be <doc:tt>"WLAN"</doc:tt>, <doc:tt>"BLUETOOTH"</doc:tt>,
          <doc:tt>"UWB"</doc:tt>, <doc:tt>"WIMAX"</doc:tt>,
          <doc:tt>"WWAN"</doc:tt>, <doc:tt>"GPS"</doc:tt>, or
          <doc:tt>"FM"</doc:tt>.
        </doc:para>
        <doc:para>
          <doc:example language="shell" title="simple example">
            <doc:code>
$ dbus-send --print-reply \
            --system \
            --dest=org.freedesktop.URfkill \
            /org/freedesktop/URfkill/WLAN \
            org.freedesktop.DBus.Properties.GetAll \
            string:"org.freedesktop.URfkill.Killswitch"

method return sender=:1.144 -> dest=:1.154 reply_serial=2
   array [
      dict entry(
         string "state"
         variant             int32 2
      )
   ]
            </doc:code>
          </doc:example>
        </doc:para>
      </doc:description>
    </doc:doc>

    <signal name="StateChanged">
      <doc:doc>
        <doc:description>
          <doc:para>
            Emitted when the state of the killswitch changed.
          </doc:para>
        </doc:description>
      </doc:doc>
    </signal>

    <!-- ************************************************************ -->

    <property name="state" type="i" access="read">
      <doc:doc>
        <doc:description>
          <doc:para>
	    The state of the killswitch
          </doc:para>
          <doc:list>
            <doc:item>
              <doc:term>-1</doc:term><doc:definition>killswitch is not available.</doc:definition>
            </doc:item>
            <doc:item>
              <doc:term>0</doc:term><doc:definition>killswitch is unblocked.</doc:definition>
            </doc:item>
            <doc:item>
              <doc:term>1</doc:term><doc:definition>killswitch is soft-blocked.</doc:definition>
            </doc:item>
            <doc:item>
              <doc:term>2</doc:term><doc:definition>killswitch is hard-blocked.</doc:definition>
            </doc:item>
          </doc:list>
        </doc:description>
      </doc:doc>
    </property>

  </interface>
</node>
