From e1e63c7c54b8a6a5d5d207bcedd08d2f8ac2465e Mon Sep 17 00:00:00 2001 From: Jinsuk Kim Date: Wed, 28 May 2014 19:11:44 +0900 Subject: [PATCH] DO NOT MERGE: Dispatch incoming CEC messages to feature actions This CL dispatches incoming CEC messages to feature actions that the service manages. Change-Id: I9221d6a25648846327d00fe5404aaf1e8ec786ce --- .../com/android/server/hdmi/HdmiControlService.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index 2fc5e8829fb02..072b97f1d50f2 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -290,8 +290,7 @@ public final class HdmiControlService extends SystemService { // TODO: Add remaining system information query such as // and handler. default: - Slog.w(TAG, "Unsupported cec command:" + message.toString()); - return false; + return dispatchMessageToAction(message); } } @@ -394,6 +393,16 @@ public final class HdmiControlService extends SystemService { } } + private boolean dispatchMessageToAction(HdmiCecMessage message) { + for (FeatureAction action : mActions) { + if (action.processCommand(message)) { + return true; + } + } + Slog.w(TAG, "Unsupported cec command:" + message); + return false; + } + // Record class that monitors the event of the caller of being killed. Used to clean up // the listener list and record list accordingly. private final class HotplugEventListenerRecord implements IBinder.DeathRecipient {