[shill] Wire IPConfig objects to dbus
BUG=chromium-os:17154
TEST=unit tests
STATUS=Verified
Change-Id: If4344b1df2806dcff914fe1e79d6f0d7705a6eb3
Reviewed-on: http://gerrit.chromium.org/gerrit/3494
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Chris Masone <cmasone@chromium.org>
diff --git a/ipconfig.h b/ipconfig.h
index f6ac640..cd9e8fd 100644
--- a/ipconfig.h
+++ b/ipconfig.h
@@ -13,13 +13,17 @@
#include <base/memory/scoped_ptr.h>
#include <gtest/gtest_prod.h> // for FRIEND_TEST
+#include "shill/property_store.h"
#include "shill/refptr_types.h"
namespace shill {
+class ControlInterface;
+class Error;
+class IPConfigAdaptorInterface;
// IPConfig superclass. Individual IP configuration types will inherit from this
// class.
-class IPConfig : public base::RefCounted<IPConfig> {
+class IPConfig : public PropertyStore, public base::RefCounted<IPConfig> {
public:
enum AddressFamily {
kAddressFamilyUnknown,
@@ -72,11 +76,14 @@
void UpdateProperties(const Properties &properties, bool success);
private:
+ friend class IPConfigAdaptorInterface;
+
FRIEND_TEST(DeviceTest, AcquireDHCPConfig);
FRIEND_TEST(DeviceTest, DestroyIPConfig);
FRIEND_TEST(IPConfigTest, UpdateCallback);
FRIEND_TEST(IPConfigTest, UpdateProperties);
+ scoped_ptr<IPConfigAdaptorInterface> adaptor_;
const std::string device_name_;
Properties properties_;
scoped_ptr<Callback2<const IPConfigRefPtr&, bool>::Type> update_callback_;