6 #include "softwarecontaineragent_dbus_common.h" 10 namespace pelagicore {
16 void connect (Gio::DBus::BusType, std::string);
25 virtual void Execute (
27 std::string commandLine,
28 std::string workingDirectory,
29 std::string outputFile,
30 std::map<std::string, std::string> env,
33 virtual void Suspend (
41 virtual void Destroy (
45 virtual void BindMount (
47 std::string pathInHost,
48 std::string pathInContainer,
52 virtual void ListCapabilities (
55 virtual void SetCapabilities (
57 std::vector<std::string> capabilities,
60 void ProcessStateChanged_emitter(gint32, guint32,
bool, guint32);
61 sigc::signal<void, gint32, guint32, bool, guint32 > ProcessStateChanged_signal;
63 void on_bus_acquired(
const Glib::RefPtr<Gio::DBus::Connection>& connection,
64 const Glib::ustring& );
66 void on_name_acquired(
const Glib::RefPtr<Gio::DBus::Connection>& ,
67 const Glib::ustring& );
69 void on_name_lost(
const Glib::RefPtr<Gio::DBus::Connection>& connection,
70 const Glib::ustring& );
72 void on_method_call(
const Glib::RefPtr<Gio::DBus::Connection>& ,
73 const Glib::ustring& ,
74 const Glib::ustring& ,
75 const Glib::ustring& ,
76 const Glib::ustring& method_name,
77 const Glib::VariantContainerBase& parameters,
78 const Glib::RefPtr<Gio::DBus::MethodInvocation>& invocation);
80 void on_interface_get_property(Glib::VariantBase& property,
81 const Glib::RefPtr<Gio::DBus::Connection>& connection,
82 const Glib::ustring& sender,
83 const Glib::ustring& object_path,
84 const Glib::ustring& interface_name,
85 const Glib::ustring& property_name);
87 bool on_interface_set_property(
88 const Glib::RefPtr<Gio::DBus::Connection>& connection,
89 const Glib::ustring& sender,
90 const Glib::ustring& object_path,
91 const Glib::ustring& interface_name,
92 const Glib::ustring& property_name,
93 const Glib::VariantBase& value);
99 sigc::signal<void, std::string> name_lost;
100 sigc::signal<void, std::string> name_acquired;
101 sigc::signal<void, std::string> object_not_registered;
104 bool emitSignal(
const std::string& propName, Glib::VariantBase& value);
108 Glib::RefPtr<Gio::DBus::NodeInfo> introspection_data;
109 Glib::RefPtr<Gio::DBus::Connection> m_connection;
110 std::string m_objectPath;
111 std::string m_interfaceName;