From bd250dfa5bdcd618c5dfd7f48b662cf4b51c31a2 Mon Sep 17 00:00:00 2001 From: James Lemieux Date: Mon, 1 Aug 2016 22:50:06 -0700 Subject: Replace Voice class with VoiceController Bug: 29538369 The static Voice class is now implemented as a delegate controller behind the Controller singleton. This is a more natural location for the code and prepares the code base for alternate implementations of the VoiceController interface for testing purposes. Change-Id: I0c9b669e4f47da7fb30b4b55177c039a7e8970e4 --- .../deskclock/controller/VoiceController.java | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/com/android/deskclock/controller/VoiceController.java (limited to 'src/com/android/deskclock/controller/VoiceController.java') diff --git a/src/com/android/deskclock/controller/VoiceController.java b/src/com/android/deskclock/controller/VoiceController.java new file mode 100644 index 000000000..c4327e309 --- /dev/null +++ b/src/com/android/deskclock/controller/VoiceController.java @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2016 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.deskclock.controller; + +import android.app.Activity; + +/** + * Implementations of this interface are consulted to terminate a voice interaction session. + */ +public interface VoiceController { + /** + * If the {@code activity} is currently hosting a voice interaction session, indicate the voice + * command was processed successfully. + * + * @param activity an Activity that may be hosting a voice interaction session + * @param message to be spoken to the user to indicate success + */ + void notifyVoiceSuccess(Activity activity, String message); + + /** + * If the {@code activity} is currently hosting a voice interaction session, indicate the voice + * command failed and must be aborted. + * + * @param activity an Activity that may be hosting a voice interaction session + * @param message to be spoken to the user to indicate failure + */ + void notifyVoiceFailure(Activity activity, String message); +} \ No newline at end of file -- cgit v1.2.3