Index: chromeos/dbus/arc_instance_client.h |
diff --git a/chromeos/dbus/arc_instance_client.h b/chromeos/dbus/arc_instance_client.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b4108599f1e23b28757f18defcfdd44a9d749969 |
--- /dev/null |
+++ b/chromeos/dbus/arc_instance_client.h |
@@ -0,0 +1,47 @@ |
+// Copyright (c) 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef CHROMEOS_DBUS_ARC_INSTANCE_CLIENT_H_ |
+#define CHROMEOS_DBUS_ARC_INSTANCE_CLIENT_H_ |
+ |
+#include "base/basictypes.h" |
+#include "chromeos/chromeos_export.h" |
+#include "chromeos/dbus/dbus_client.h" |
+#include "chromeos/dbus/dbus_method_call_status.h" |
+ |
+namespace dbus { |
+class ObjectPath; |
+} |
+ |
+namespace chromeos { |
+ |
+// Client for the Arc Instance Service |
+class CHROMEOS_EXPORT ArcInstanceClient : public DBusClient { |
+ public: |
+ ~ArcInstanceClient() override; |
+ |
+ // Factory function, creates a new instance and returns ownership. |
+ // For normal usage, access the singleton via DBusThreadManager::Get(). |
+ static ArcInstanceClient* Create(); |
+ |
+ // Starts an instance of ARC. |callback| is called after the method call |
+ // succeeds. |
+ virtual void StartInstance(const std::string& socket_path, |
+ const BoolDBusMethodCallback& callback) = 0; |
+ |
+ // Stops the currently running instance of ARC. |callback| is called after |
+ // the method call is processed. |
+ virtual void StopInstance(const VoidDBusMethodCallback& callback) = 0; |
+ |
+ protected: |
+ // Create() should be used instead. |
+ ArcInstanceClient(); |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(ArcInstanceClient); |
+}; |
+ |
+} // namespace chromeos |
+ |
+#endif // CHROMEOS_DBUS_ARC_INSTANCE_CLIENT_H_ |