diff options
author | gspencer@chromium.org <gspencer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-07 20:53:56 +0000 |
---|---|---|
committer | gspencer@chromium.org <gspencer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-07 20:53:56 +0000 |
commit | 07c674cd5a7d9f79cd2be1d04437bf97717f79a0 (patch) | |
tree | 8440a6b3d9150fe4b2ea2c28b8eb3d40e868e04c /chromeos/dbus/shill_device_client.h | |
parent | f57c90fa9a0916afd523287767d880499879b031 (diff) | |
download | chromium_src-07c674cd5a7d9f79cd2be1d04437bf97717f79a0.zip chromium_src-07c674cd5a7d9f79cd2be1d04437bf97717f79a0.tar.gz chromium_src-07c674cd5a7d9f79cd2be1d04437bf97717f79a0.tar.bz2 |
Renaming instances of "flimflam" with "shill", now that we're only using shill.
Does not rename things from the flimflam:: namespace in service_constants.h: that will be saved for a later pass.
I think this counts as refactoring, so I'm TBR'ing the OWNERS checks.
TBR=zelidrag@chromium.org,glotov@chromium.org
BUG=chromium:146616
TEST=built and ran
Review URL: https://chromiumcodereview.appspot.com/10915106
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155477 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos/dbus/shill_device_client.h')
-rw-r--r-- | chromeos/dbus/shill_device_client.h | 153 |
1 files changed, 153 insertions, 0 deletions
diff --git a/chromeos/dbus/shill_device_client.h b/chromeos/dbus/shill_device_client.h new file mode 100644 index 0000000..ea55b6d --- /dev/null +++ b/chromeos/dbus/shill_device_client.h @@ -0,0 +1,153 @@ +// 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_SHILL_DEVICE_CLIENT_H_ +#define CHROMEOS_DBUS_SHILL_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/shill_client_helper.h" + +namespace base { + +class Value; +class DictionaryValue; + +} // namespace base + +namespace dbus { + +class Bus; +class ObjectPath; + +} // namespace dbus + +namespace chromeos { + +// ShillDeviceClient is used to communicate with the Shill Device service. +// All methods should be called from the origin thread which initializes the +// DBusThreadManager instance. +class CHROMEOS_EXPORT ShillDeviceClient { + public: + typedef ShillClientHelper::PropertyChangedHandler PropertyChangedHandler; + typedef ShillClientHelper::DictionaryValueCallback DictionaryValueCallback; + typedef ShillClientHelper::ErrorCallback ErrorCallback; + + virtual ~ShillDeviceClient(); + + // Factory function, creates a new instance which is owned by the caller. + // For normal usage, access the singleton via DBusThreadManager::Get(). + static ShillDeviceClient* 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; + + // DEPRECATED DO NOT USE: Calls GetProperties method and blocks until the + // method call finishes. The caller is responsible to delete the result. + // Thie method returns NULL when method call fails. + // + // TODO(hashimoto): Refactor CrosGetDeviceNetworkList and remove this method. + // crosbug.com/29902 + virtual base::DictionaryValue* CallGetPropertiesAndBlock( + const dbus::ObjectPath& device_path) = 0; + + // Calls ProposeScan method. + // |callback| is called after the method call finishes. + virtual void ProposeScan(const dbus::ObjectPath& device_path, + const VoidDBusMethodCallback& 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 VoidDBusMethodCallback& 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 VoidDBusMethodCallback& 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 ObjectPathDBusMethodCallback& callback) = 0; + + // DEPRECATED DO NOT USE: Calls AddIPConfig method and blocks until the method + // call finishes. + // This method returns an empty path when method call fails. + // + // TODO(hashimoto): Refactor CrosAddIPConfig and remove this method. + // crosbug.com/29902 + virtual dbus::ObjectPath CallAddIPConfigAndBlock( + const dbus::ObjectPath& device_path, + const std::string& method) = 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 base::Closure& callback, + const ErrorCallback& error_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 base::Closure& callback, + const ErrorCallback& error_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 base::Closure& callback, + const ErrorCallback& error_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 base::Closure& callback, + const ErrorCallback& error_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 base::Closure& callback, + const ErrorCallback& error_callback) = 0; + + protected: + // Create() should be used instead. + ShillDeviceClient(); + + private: + DISALLOW_COPY_AND_ASSIGN(ShillDeviceClient); +}; + +} // namespace chromeos + +#endif // CHROMEOS_DBUS_SHILL_DEVICE_CLIENT_H_ |