diff options
Diffstat (limited to 'chromeos/network/network_handler_callbacks.cc')
-rw-r--r-- | chromeos/network/network_handler_callbacks.cc | 47 |
1 files changed, 32 insertions, 15 deletions
diff --git a/chromeos/network/network_handler_callbacks.cc b/chromeos/network/network_handler_callbacks.cc index c23dc50..bbd4bcc 100644 --- a/chromeos/network/network_handler_callbacks.cc +++ b/chromeos/network/network_handler_callbacks.cc @@ -13,34 +13,51 @@ namespace network_handler { // These are names of fields in the error data dictionary for ErrorCallback. const char kErrorName[] = "errorName"; -const char kErrorMessage[] = "errorMessage"; -const char kServicePath[] = "servicePath"; +const char kErrorDetail[] = "errorDetail"; +const char kDbusErrorName[] = "dbusErrorName"; +const char kDbusErrorMessage[] = "dbusErrorMessage"; +const char kPath[] = "path"; base::DictionaryValue* CreateErrorData(const std::string& service_path, const std::string& error_name, - const std::string& error_message) { + const std::string& error_detail) { + return CreateDBusErrorData(service_path, error_name, error_detail, "", ""); +} + +base::DictionaryValue* CreateDBusErrorData( + const std::string& path, + const std::string& error_name, + const std::string& error_detail, + const std::string& dbus_error_name, + const std::string& dbus_error_message) { base::DictionaryValue* error_data(new base::DictionaryValue); error_data->SetString(kErrorName, error_name); - error_data->SetString(kErrorMessage, error_message); - if (!service_path.empty()) - error_data->SetString(kServicePath, service_path); + error_data->SetString(kErrorDetail, error_detail); + error_data->SetString(kDbusErrorName, dbus_error_name); + error_data->SetString(kDbusErrorMessage, dbus_error_message); + if (!path.empty()) + error_data->SetString(kPath, path); return error_data; } -void ShillErrorCallbackFunction(const std::string& path, +void ShillErrorCallbackFunction(const std::string& error_name, + const std::string& path, const ErrorCallback& error_callback, - const std::string& error_name, - const std::string& error_message) { - std::string error = "Shill Error"; + const std::string& dbus_error_name, + const std::string& dbus_error_message) { + std::string detail; if (!path.empty()) - error += " For " + path; - error += ": " + error_name; - NET_LOG_ERROR(error, error_message); - LOG(ERROR) << error << " : " << error_message; + detail += path + ": "; + detail += dbus_error_name; + if (!dbus_error_message.empty()) + detail += ": " + dbus_error_message; + NET_LOG_ERROR(error_name, detail); + if (error_callback.is_null()) return; scoped_ptr<base::DictionaryValue> error_data( - CreateErrorData(path, error_name, error_message)); + CreateDBusErrorData(path, error_name, detail, + dbus_error_name, dbus_error_message)); error_callback.Run(error_name, error_data.Pass()); } |