Index: chromeos/dbus/flimflam_device_client.h |
diff --git a/chromeos/dbus/flimflam_device_client.h b/chromeos/dbus/flimflam_device_client.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..722f0c36f1b0dc2f12a6719965489fa40ca916a6 |
--- /dev/null |
+++ b/chromeos/dbus/flimflam_device_client.h |
@@ -0,0 +1,130 @@ |
+// Copyright (c) 2012 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_FLIMFLAM_DEVICE_CLIENT_H_ |
+#define CHROMEOS_DBUS_FLIMFLAM_DEVICE_CLIENT_H_ |
+ |
+#include <string> |
+ |
+#include "base/basictypes.h" |
+#include "base/callback.h" |
+#include "chromeos/chromeos_export.h" |
+#include "chromeos/dbus/dbus_client_implementation_type.h" |
+#include "chromeos/dbus/flimflam_client_helper.h" |
+ |
+namespace base { |
+ |
+class Value; |
+class DictionaryValue; |
+ |
+} // namespace base |
+ |
+namespace dbus { |
+ |
+class Bus; |
+class ObjectPath; |
+ |
+} // namespace dbus |
+ |
+namespace chromeos { |
+ |
+// FlimflamDeviceClient is used to communicate with the Flimflam Device service. |
+// All methods should be called from the origin thread which initializes the |
+// DBusThreadManager instance. |
+class CHROMEOS_EXPORT FlimflamDeviceClient { |
+ public: |
+ typedef FlimflamClientHelper::PropertyChangedHandler PropertyChangedHandler; |
+ typedef FlimflamClientHelper::VoidCallback VoidCallback; |
+ typedef FlimflamClientHelper::ObjectPathCallback ObjectPathCallback; |
+ typedef FlimflamClientHelper::DictionaryValueCallback DictionaryValueCallback; |
+ |
+ virtual ~FlimflamDeviceClient(); |
+ |
+ // Factory function, creates a new instance which is owned by the caller. |
+ // For normal usage, access the singleton via DBusThreadManager::Get(). |
+ static FlimflamDeviceClient* Create(DBusClientImplementationType type, |
+ dbus::Bus* bus); |
+ |
+ // Sets PropertyChanged signal handler. |
+ virtual void SetPropertyChangedHandler( |
+ const dbus::ObjectPath& device_path, |
+ const PropertyChangedHandler& handler) = 0; |
+ |
+ // Resets PropertyChanged signal handler. |
+ virtual void ResetPropertyChangedHandler( |
+ const dbus::ObjectPath& device_path) = 0; |
+ |
+ // Calls GetProperties method. |
+ // |callback| is called after the method call finishes. |
+ virtual void GetProperties(const dbus::ObjectPath& device_path, |
+ const DictionaryValueCallback& callback) = 0; |
+ |
+ // Calls ProposeScan method. |
+ // |callback| is called after the method call finishes. |
+ virtual void ProposeScan(const dbus::ObjectPath& device_path, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls SetProperty method. |
+ // |callback| is called after the method call finishes. |
+ virtual void SetProperty(const dbus::ObjectPath& device_path, |
+ const std::string& name, |
+ const base::Value& value, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls ClearProperty method. |
+ // |callback| is called after the method call finishes. |
+ virtual void ClearProperty(const dbus::ObjectPath& device_path, |
+ const std::string& name, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls AddIPConfig method. |
+ // |callback| is called after the method call finishes. |
+ virtual void AddIPConfig(const dbus::ObjectPath& device_path, |
+ const std::string& method, |
+ const ObjectPathCallback& callback) = 0; |
+ |
+ // Calls RequirePin method. |
+ // |callback| is called after the method call finishes. |
+ virtual void RequirePin(const dbus::ObjectPath& device_path, |
+ const std::string& pin, |
+ bool require, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls EnterPin method. |
+ // |callback| is called after the method call finishes. |
+ virtual void EnterPin(const dbus::ObjectPath& device_path, |
+ const std::string& pin, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls UnblockPin method. |
+ // |callback| is called after the method call finishes. |
+ virtual void UnblockPin(const dbus::ObjectPath& device_path, |
+ const std::string& puk, |
+ const std::string& pin, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls ChangePin method. |
+ // |callback| is called after the method call finishes. |
+ virtual void ChangePin(const dbus::ObjectPath& device_path, |
+ const std::string& old_pin, |
+ const std::string& new_pin, |
+ const VoidCallback& callback) = 0; |
+ |
+ // Calls Register method. |
+ // |callback| is called after the method call finishes. |
+ virtual void Register(const dbus::ObjectPath& device_path, |
+ const std::string& network_id, |
+ const VoidCallback& callback) = 0; |
+ |
+ protected: |
+ // Create() should be used instead. |
+ FlimflamDeviceClient(); |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(FlimflamDeviceClient); |
+}; |
+ |
+} // namespace chromeos |
+ |
+#endif // CHROMEOS_DBUS_FLIMFLAM_DEVICE_CLIENT_H_ |