shill: Convert DHCP Proxy to use a model similar to Supplicant and ModemManager.
Also, don't create a DBus connection for each proxy since this doesn't work in
some event callbacks and wastes resources. Instead use a shared connection
provided by the ProxyFactory.
BUG=chromium-os:17735
TEST=unit tests, tested on device
Change-Id: I4d16b430783c1159501c0414ef3b846bce1a4c0e
Reviewed-on: http://gerrit.chromium.org/gerrit/4279
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: mukesh agrawal <quiche@chromium.org>
diff --git a/dhcp_proxy_interface.h b/dhcp_proxy_interface.h
index 275a91b..239095e 100644
--- a/dhcp_proxy_interface.h
+++ b/dhcp_proxy_interface.h
@@ -9,18 +9,14 @@
namespace shill {
-// These are the functions that a DHCP proxy and listener must support.
+// These are the methods that a DHCP proxy must support. The interface is
+// provided so that it can be mocked in tests.
class DHCPProxyInterface {
public:
virtual ~DHCPProxyInterface() {}
- virtual void DoRebind(const std::string &interface) = 0;
- virtual void DoRelease(const std::string &interface) = 0;
-};
-
-class DHCPListenerInterface {
- public:
- virtual ~DHCPListenerInterface() {}
+ virtual void Rebind(const std::string &interface) = 0;
+ virtual void Release(const std::string &interface) = 0;
};
} // namespace shill