shill: Implement write-only properties
Certain properties (e.g. WIFI Passphrase) are write only and must
not be returned when Service.GetProperties() is called over D-Bus.
This CL implements WriteOnlyProperties, a write-only analog of the
read-only ConstProperties.
Also add a ReadablePropertyConstIterator which only returns the
readable properties. Switch over DBus adaptor and PropertyStore
to use that.
BUG=chromium-os:21196
TEST=Added 2 new unittests.
Change-Id: I52815cc395650e0b49e1acac8d4954deeebcee5d
Reviewed-on: https://gerrit.chromium.org/gerrit/11402
Commit-Ready: Gaurav Shah <gauravsh@chromium.org>
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Tested-by: Gaurav Shah <gauravsh@chromium.org>
diff --git a/accessor_interface.h b/accessor_interface.h
index 68b2837..efb85ef 100644
--- a/accessor_interface.h
+++ b/accessor_interface.h
@@ -28,8 +28,8 @@
AccessorInterface() {}
virtual ~AccessorInterface() {}
- // Provides read-only access.
- virtual const T &Get() = 0;
+ // Provides read-only access. Sets |error| on failure.
+ virtual T Get(Error *error) = 0;
// Attempts to set the wrapped value. Sets |error| on failure.
virtual void Set(const T &value, Error *error) = 0;