Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(115)

Unified Diff: chromeos/dbus/shill_profile_client.cc

Issue 10949030: This converts the Shill clients to allow propagation of shill errors (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Review changes Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chromeos/dbus/shill_profile_client.cc
diff --git a/chromeos/dbus/shill_profile_client.cc b/chromeos/dbus/shill_profile_client.cc
index 78a62b24744b2047afbe202325c8ad00dcc80463..db654dd4255ecc3a1183729dfa61d40db9a7f14b 100644
--- a/chromeos/dbus/shill_profile_client.cc
+++ b/chromeos/dbus/shill_profile_client.cc
@@ -23,20 +23,26 @@ class ShillProfileClientImpl : public ShillProfileClient {
public:
explicit ShillProfileClientImpl(dbus::Bus* bus);
- // ShillProfileClient overrides:
+ /////////////////////////////////////
+ // ShillProfileClient overrides.
virtual void SetPropertyChangedHandler(
const dbus::ObjectPath& profile_path,
const PropertyChangedHandler& handler) OVERRIDE;
virtual void ResetPropertyChangedHandler(
const dbus::ObjectPath& profile_path) OVERRIDE;
- virtual void GetProperties(const dbus::ObjectPath& profile_path,
- const DictionaryValueCallback& callback) OVERRIDE;
+
hashimoto 2012/09/24 02:28:56 nit: Remove this line.
+ virtual void GetProperties(
+ const dbus::ObjectPath& profile_path,
+ const DictionaryValueCallbackWithoutStatus& callback,
+ const ErrorCallback& error_callback) OVERRIDE;
virtual void GetEntry(const dbus::ObjectPath& profile_path,
const std::string& entry_path,
- const DictionaryValueCallback& callback) OVERRIDE;
+ const DictionaryValueCallbackWithoutStatus& callback,
+ const ErrorCallback& error_callback) OVERRIDE;
virtual void DeleteEntry(const dbus::ObjectPath& profile_path,
const std::string& entry_path,
- const VoidDBusMethodCallback& callback) OVERRIDE;
+ const base::Closure& callback,
+ const ErrorCallback& error_callback) OVERRIDE;
private:
typedef std::map<std::string, ShillClientHelper*> HelperMap;
@@ -84,32 +90,38 @@ void ShillProfileClientImpl::ResetPropertyChangedHandler(
void ShillProfileClientImpl::GetProperties(
const dbus::ObjectPath& profile_path,
- const DictionaryValueCallback& callback) {
+ const DictionaryValueCallbackWithoutStatus& callback,
+ const ErrorCallback& error_callback) {
dbus::MethodCall method_call(flimflam::kFlimflamProfileInterface,
flimflam::kGetPropertiesFunction);
- GetHelper(profile_path)->CallDictionaryValueMethod(&method_call, callback);
+ GetHelper(profile_path)->CallDictionaryValueMethodWithErrorCallback(
+ &method_call, callback, error_callback);
}
void ShillProfileClientImpl::GetEntry(
const dbus::ObjectPath& profile_path,
const std::string& entry_path,
- const DictionaryValueCallback& callback) {
+ const DictionaryValueCallbackWithoutStatus& callback,
+ const ErrorCallback& error_callback) {
dbus::MethodCall method_call(flimflam::kFlimflamProfileInterface,
flimflam::kGetEntryFunction);
dbus::MessageWriter writer(&method_call);
writer.AppendString(entry_path);
- GetHelper(profile_path)->CallDictionaryValueMethod(&method_call, callback);
+ GetHelper(profile_path)->CallDictionaryValueMethodWithErrorCallback(
+ &method_call, callback, error_callback);
}
void ShillProfileClientImpl::DeleteEntry(
const dbus::ObjectPath& profile_path,
const std::string& entry_path,
- const VoidDBusMethodCallback& callback) {
+ const base::Closure& callback,
+ const ErrorCallback& error_callback) {
dbus::MethodCall method_call(flimflam::kFlimflamProfileInterface,
flimflam::kDeleteEntryFunction);
dbus::MessageWriter writer(&method_call);
writer.AppendString(entry_path);
- GetHelper(profile_path)->CallVoidMethod(&method_call, callback);
+ GetHelper(profile_path)->CallVoidMethodWithErrorCallback(
+ &method_call, callback, error_callback);
}
// A stub implementation of ShillProfileClient.
@@ -128,9 +140,10 @@ class ShillProfileClientStubImpl : public ShillProfileClient {
virtual void ResetPropertyChangedHandler(
const dbus::ObjectPath& profile_path) OVERRIDE {}
- // ShillProfileClient override.
- virtual void GetProperties(const dbus::ObjectPath& profile_path,
- const DictionaryValueCallback& callback) OVERRIDE {
+ virtual void GetProperties(
+ const dbus::ObjectPath& profile_path,
+ const DictionaryValueCallbackWithoutStatus& callback,
+ const ErrorCallback& error_callback) OVERRIDE {
MessageLoop::current()->PostTask(
FROM_HERE,
base::Bind(&ShillProfileClientStubImpl::PassEmptyDictionaryValue,
@@ -141,7 +154,8 @@ class ShillProfileClientStubImpl : public ShillProfileClient {
// ShillProfileClient override.
virtual void GetEntry(const dbus::ObjectPath& profile_path,
const std::string& entry_path,
- const DictionaryValueCallback& callback) OVERRIDE {
+ const DictionaryValueCallbackWithoutStatus& callback,
+ const ErrorCallback& error_callback) OVERRIDE {
MessageLoop::current()->PostTask(
FROM_HERE,
base::Bind(&ShillProfileClientStubImpl::PassEmptyDictionaryValue,
@@ -152,16 +166,16 @@ class ShillProfileClientStubImpl : public ShillProfileClient {
// ShillProfileClient override.
virtual void DeleteEntry(const dbus::ObjectPath& profile_path,
const std::string& entry_path,
- const VoidDBusMethodCallback& callback) OVERRIDE {
- MessageLoop::current()->PostTask(FROM_HERE,
- base::Bind(callback,
- DBUS_METHOD_CALL_SUCCESS));
+ const base::Closure& callback,
+ const ErrorCallback& error_callback) OVERRIDE {
+ MessageLoop::current()->PostTask(FROM_HERE, callback);
}
private:
- void PassEmptyDictionaryValue(const DictionaryValueCallback& callback) const {
+ void PassEmptyDictionaryValue(
+ const DictionaryValueCallbackWithoutStatus& callback) const {
base::DictionaryValue dictionary;
- callback.Run(DBUS_METHOD_CALL_SUCCESS, dictionary);
+ callback.Run(dictionary);
}
// Note: This should remain the last member so it'll be destroyed and

Powered by Google App Engine
This is Rietveld 408576698