buffet: Moved D-Bus definitions to XML/Code generator

Moved D-Bus interface definitions for buffet to XML files and using
the code generator to produce adaptors/proxies. Switched over the
implementations of objects to using the generated adaptors and using
the generated proxies in buffet_client.

Some more work on proxy generator is required to switch over the
usage of Command/CommandListener in libbuffet to using the generated
proxies, since the generator does not support D-Bus properties or
Object Manager yet.

BUG=chromium:435591
TEST=FEATURES=test emerge-link buffet

Change-Id: If010ee70b356d146e4a35a7301a753c9c54377f5
Reviewed-on: https://chromium-review.googlesource.com/231350
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Alex Vakulenko <avakulenko@chromium.org>
Tested-by: Alex Vakulenko <avakulenko@chromium.org>
diff --git a/buffet/dbus_bindings/org.chromium.Buffet.Command.xml b/buffet/dbus_bindings/org.chromium.Buffet.Command.xml
new file mode 100644
index 0000000..89d9efd
--- /dev/null
+++ b/buffet/dbus_bindings/org.chromium.Buffet.Command.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<node name="/"
+      xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
+  <interface name="org.chromium.Buffet.Command">
+    <method name="SetProgress">
+      <arg name="progress" type="i" direction="in"/>
+      <annotation name="org.chromium.DBus.Method.Kind" value="normal"/>
+    </method>
+    <method name="Abort">
+      <annotation name="org.chromium.DBus.Method.Kind" value="simple"/>
+    </method>
+    <method name="Cancel">
+      <annotation name="org.chromium.DBus.Method.Kind" value="simple"/>
+    </method>
+    <method name="Done">
+      <annotation name="org.chromium.DBus.Method.Kind" value="simple"/>
+    </method>
+    <property name="Name" type="s" access="read"/>
+    <property name="Category" type="s" access="read"/>
+    <property name="Id" type="s" access="read"/>
+    <property name="Status" type="s" access="read"/>
+    <property name="Progress" type="i" access="read"/>
+    <property name="Parameters" type="a{sv}" access="read"/>
+  </interface>
+</node>