diff options
author | Alex Vakulenko <avakulenko@google.com> | 2015-12-09 22:11:09 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-12-09 22:11:09 +0000 |
commit | bae77f7ed80fdfee8af75f85d00e48a1cd988635 (patch) | |
tree | 5afe58605b956c982750e9878fe4f0582d0d9cf8 | |
parent | 7a0f0caf76bb9a5ea0fedd4d8d700e8c24b44f27 (diff) | |
parent | 7ff24de7d0de683aaa75fbab68d25088fdf7433c (diff) | |
download | example-ledflasher-brillo-m8-dev.tar.gz |
Merge "ledflasher: Update to use new component/trait APIs from weaved"brillo-m8-releasebrillo-m8-dev
-rw-r--r-- | src/ledflasher/Android.mk | 15 | ||||
-rw-r--r-- | src/ledflasher/etc/weaved/commands/ledflasher.json | 39 | ||||
-rw-r--r-- | src/ledflasher/etc/weaved/states/ledflasher.schema.json | 14 | ||||
-rw-r--r-- | src/ledflasher/etc/weaved/traits/ledflasher.json | 53 | ||||
-rw-r--r-- | src/ledflasher/ledflasher.cpp | 10 |
5 files changed, 65 insertions, 66 deletions
diff --git a/src/ledflasher/Android.mk b/src/ledflasher/Android.mk index e1f7456..12d9cac 100644 --- a/src/ledflasher/Android.mk +++ b/src/ledflasher/Android.mk @@ -17,9 +17,7 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := ledflasher LOCAL_INIT_RC := ledflasher.rc -LOCAL_REQUIRED_MODULES := \ - ledflasher.json \ - ledflasher.schema.json \ +LOCAL_REQUIRED_MODULES := ledflasher.json LOCAL_SRC_FILES := \ animation.cpp \ @@ -48,13 +46,6 @@ include $(BUILD_EXECUTABLE) include $(CLEAR_VARS) LOCAL_MODULE := ledflasher.json LOCAL_MODULE_CLASS := ETC -LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/weaved/commands -LOCAL_SRC_FILES := etc/weaved/commands/$(LOCAL_MODULE) -include $(BUILD_PREBUILT) - -include $(CLEAR_VARS) -LOCAL_MODULE := ledflasher.schema.json -LOCAL_MODULE_CLASS := ETC -LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/weaved/states -LOCAL_SRC_FILES := etc/weaved/states/$(LOCAL_MODULE) +LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/weaved/traits +LOCAL_SRC_FILES := etc/weaved/traits/$(LOCAL_MODULE) include $(BUILD_PREBUILT) diff --git a/src/ledflasher/etc/weaved/commands/ledflasher.json b/src/ledflasher/etc/weaved/commands/ledflasher.json deleted file mode 100644 index eab757c..0000000 --- a/src/ledflasher/etc/weaved/commands/ledflasher.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "_ledflasher": { - "_set": { - "minimalRole": "user", - "parameters": { - "_led": { - "type": "integer", - "minimum": 1, - "maximum": 4 - }, - "_on": {"type": "boolean"} - } - }, - "_toggle": { - "minimalRole": "user", - "parameters": { - "_led": { - "type": "integer", - "minimum": 1, - "maximum": 4 - } - } - }, - "_animate": { - "minimalRole": "user", - "parameters": { - "_duration": { - "type": "number", - "minimum": 0.1, - "maximum": 100.0 - }, - "_type": { - "type": "string", - "enum": ["none", "marquee_left", "marquee_right", "blink"] - } - } - } - } -} diff --git a/src/ledflasher/etc/weaved/states/ledflasher.schema.json b/src/ledflasher/etc/weaved/states/ledflasher.schema.json deleted file mode 100644 index 0f0e37e..0000000 --- a/src/ledflasher/etc/weaved/states/ledflasher.schema.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "_ledflasher": { - "_status": { - "enum": { - "type": "string", - "enum": [ "idle", "animating" ] - } - }, - "_leds": { - "type": "array", - "items": { "type": "boolean" } - } - } -} diff --git a/src/ledflasher/etc/weaved/traits/ledflasher.json b/src/ledflasher/etc/weaved/traits/ledflasher.json new file mode 100644 index 0000000..7eefa5e --- /dev/null +++ b/src/ledflasher/etc/weaved/traits/ledflasher.json @@ -0,0 +1,53 @@ +{ + "_ledflasher": { + "commands": { + "_set": { + "minimalRole": "user", + "parameters": { + "_led": { + "type": "integer", + "minimum": 1, + "maximum": 4 + }, + "_on": { "type": "boolean" } + } + }, + "_toggle": { + "minimalRole": "user", + "parameters": { + "_led": { + "type": "integer", + "minimum": 1, + "maximum": 4 + } + } + }, + "_animate": { + "minimalRole": "user", + "parameters": { + "_duration": { + "type": "number", + "minimum": 0.1, + "maximum": 100.0 + }, + "_type": { + "type": "string", + "enum": [ "none", "marquee_left", "marquee_right", "blink" ] + } + } + } + }, + "states": { + "_status": { + "enum": { + "type": "string", + "enum": [ "idle", "animating" ] + } + }, + "_leds": { + "type": "array", + "items": { "type": "boolean" } + } + } + } +} diff --git a/src/ledflasher/ledflasher.cpp b/src/ledflasher/ledflasher.cpp index e9bfa3c..5a3524f 100644 --- a/src/ledflasher/ledflasher.cpp +++ b/src/ledflasher/ledflasher.cpp @@ -29,6 +29,10 @@ using com::android::LEDService::ServiceProxyInterface; +namespace { +const char kWeaveComponent[] = "ledflasher"; +} // anonymous namespace + class Daemon final : public brillo::DBusDaemon { public: Daemon() = default; @@ -73,13 +77,17 @@ int Daemon::OnInit() { device_ = weaved::Device::CreateInstance( bus_, base::Bind(&Daemon::UpdateDeviceState, base::Unretained(this))); + device_->AddComponent(kWeaveComponent, {"_ledflasher"}); device_->AddCommandHandler( + kWeaveComponent, "_ledflasher._set", base::Bind(&Daemon::OnSet, base::Unretained(this))); device_->AddCommandHandler( + kWeaveComponent, "_ledflasher._toggle", base::Bind(&Daemon::OnToggle, base::Unretained(this))); device_->AddCommandHandler( + kWeaveComponent, "_ledflasher._animate", base::Bind(&Daemon::OnAnimate, base::Unretained(this))); @@ -201,7 +209,7 @@ void Daemon::UpdateDeviceState() { }; // TODO: Come up with a design for ledflasher.cpp such that this call never // fails. - device_->SetStateProperties(state_change, nullptr); + device_->SetStateProperties(kWeaveComponent, state_change, nullptr); } int main(int argc, char* argv[]) { |