Index: chromeos/network/network_connection_handler.h |
diff --git a/chromeos/network/network_connection_handler.h b/chromeos/network/network_connection_handler.h |
index bdcf89dda72a09c78406013c958f394621f1f740..20521c1c3377908b9b32346ceb84e6e04ed366fc 100644 |
--- a/chromeos/network/network_connection_handler.h |
+++ b/chromeos/network/network_connection_handler.h |
@@ -19,6 +19,7 @@ |
#include "chromeos/chromeos_export.h" |
#include "chromeos/dbus/dbus_method_call_status.h" |
#include "chromeos/login/login_state.h" |
+#include "chromeos/network/network_connection_observer.h" |
#include "chromeos/network/network_handler.h" |
#include "chromeos/network/network_handler_callbacks.h" |
#include "chromeos/network/network_state_handler_observer.h" |
@@ -49,19 +50,6 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
public NetworkStateHandlerObserver, |
public base::SupportsWeakPtr<NetworkConnectionHandler> { |
public: |
- class Observer { |
- public: |
- // Called if a connection to network |service_path| was requested, by |
- // calling ConnectToNetwork. |
- virtual void ConnectToNetworkRequested(const std::string& service_path) = 0; |
- |
- protected: |
- virtual ~Observer() {} |
- |
- private: |
- DISALLOW_ASSIGN(Observer); |
- }; |
- |
// Constants for |error_name| from |error_callback| for Connect. |
// No network matching |service_path| is found (hidden networks must be |
@@ -77,7 +65,8 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
// The passphrase is missing or invalid. |
static const char kErrorPassphraseRequired[]; |
- static const char kErrorActivationRequired[]; |
+ // The passphrase is incorrect. |
+ static const char kErrorBadPassphrase[]; |
// The network requires a cert and none exists. |
static const char kErrorCertificateRequired[]; |
@@ -92,8 +81,11 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
// Configuration failed during the configure stage of the connect flow. |
static const char kErrorConfigureFailed[]; |
- // For Disconnect or Activate, an unexpected DBus or Shill error occurred. |
- static const char kErrorShillError[]; |
+ // An unexpected DBus or Shill error occurred while connecting. |
+ static const char kErrorConnectFailed[]; |
pneubeck (no reviews)
2015/01/04 16:57:00
the constant name should probably be a bit more co
stevenjb
2015/01/09 18:18:02
The failure could be for any number of reasons, I'
|
+ |
+ // An unexpected DBus or Shill error occurred while disconnecting. |
+ static const char kErrorDisconnectFailed[]; |
// A new network connect request canceled this one. |
static const char kErrorConnectCanceled[]; |
@@ -106,15 +98,13 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
virtual ~NetworkConnectionHandler(); |
- void AddObserver(Observer* observer); |
- void RemoveObserver(Observer* observer); |
+ void AddObserver(NetworkConnectionObserver* observer); |
+ void RemoveObserver(NetworkConnectionObserver* observer); |
// ConnectToNetwork() will start an asynchronous connection attempt. |
// On success, |success_callback| will be called. |
// On failure, |error_callback| will be called with |error_name| one of the |
- // constants defined above, or shill::kErrorConnectFailed or |
- // shill::kErrorBadPassphrase if the Shill Error property (from a |
- // previous connect attempt) was set to one of those. |
+ // constants defined above. |
// |error_message| will contain an additional error string for debugging. |
// If |check_error_state| is true, the current state of the network is |
// checked for errors, otherwise current state is ignored (e.g. for recently |
@@ -129,7 +119,7 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
// On failure, |error_callback| will be called with |error_name| one of: |
// kErrorNotFound if no network matching |service_path| is found. |
// kErrorNotConnected if not connected to the network. |
- // kErrorShillError if a DBus or Shill error occurred. |
+ // kErrorDisconnectFailed if a DBus or Shill error occurred. |
// |error_message| will contain and additional error string for debugging. |
void DisconnectNetwork(const std::string& service_path, |
const base::Closure& success_callback, |
@@ -206,9 +196,21 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
void CheckPendingRequest(const std::string service_path); |
void CheckAllPendingRequests(); |
+ // Notify caller and observers that the connect request succeeded. |
+ void InvokeSuccessCallback(const std::string& service_path, |
+ const base::Closure& success_callback); |
+ |
+ // Look up the ConnectRequest for |service_path| and call InvokeErrorCallback. |
void ErrorCallbackForPendingRequest(const std::string& service_path, |
const std::string& error_name); |
+ // Notify caller and observers that the connect request failed. |
+ // |error_name| will be one of the kError* messages defined above. |
+ void InvokeErrorCallback( |
pneubeck (no reviews)
2015/01/04 16:57:00
function name should mention that this is specific
stevenjb
2015/01/09 18:18:02
-> InvokeConnect{Success|Error}Callback
|
+ const std::string& service_path, |
+ const network_handler::ErrorCallback& error_callback, |
+ const std::string& error_name); |
+ |
// Calls Shill.Manager.Disconnect asynchronously. |
void CallShillDisconnect( |
const std::string& service_path, |
@@ -219,7 +221,7 @@ class CHROMEOS_EXPORT NetworkConnectionHandler |
void HandleShillDisconnectSuccess(const std::string& service_path, |
const base::Closure& success_callback); |
- ObserverList<Observer> observers_; |
+ ObserverList<NetworkConnectionObserver> observers_; |
// Local references to the associated handler instances. |
CertLoader* cert_loader_; |