shill: wimax: Listen to SignalStrengthChanged and update the service strength.

Also, change some instances of DBus::Path to RpcIdentifier.

BUG=chrome-os-partner:9831,chrome-os-partner:9837
TEST=unit tests
CQ-DEPEND=If7c0543cc98bc39fba28e7465bcd6de974d8aa1f

Change-Id: I49fafd5569764d46f5814ac3d19783fe4409a675
Reviewed-on: https://gerrit.chromium.org/gerrit/23115
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/wimax_network_proxy_interface.h b/wimax_network_proxy_interface.h
index 3777ba6..2216051 100644
--- a/wimax_network_proxy_interface.h
+++ b/wimax_network_proxy_interface.h
@@ -8,7 +8,9 @@
 #include <string>
 
 #include <base/basictypes.h>
-#include <dbus-c++/dbus.h>
+#include <base/callback_forward.h>
+
+#include "shill/accessor_interface.h"
 
 namespace shill {
 
@@ -18,9 +20,14 @@
 // interface is provided so that it can be mocked in tests.
 class WiMaxNetworkProxyInterface {
  public:
+  typedef base::Callback<void(int)> SignalStrengthChangedCallback;
+
   virtual ~WiMaxNetworkProxyInterface() {}
 
-  virtual DBus::Path proxy_object_path() const = 0;
+  virtual RpcIdentifier path() const = 0;
+
+  virtual void set_signal_strength_changed_callback(
+      const SignalStrengthChangedCallback &callback) = 0;
 
   // Properties.
   virtual uint32 Identifier(Error *error) = 0;