193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert/* 293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * Copyright (C) 2010 The Android Open Source Project 393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * 493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * Licensed under the Apache License, Version 2.0 (the "License"); 593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * you may not use this file except in compliance with the License. 693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * You may obtain a copy of the License at 793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * 893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * http://www.apache.org/licenses/LICENSE-2.0 993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * 1093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * Unless required by applicable law or agreed to in writing, software 1193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * distributed under the License is distributed on an "AS IS" BASIS, 1293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * See the License for the specific language governing permissions and 1493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * limitations under the License. 1593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert */ 1693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringertpackage com.android.quicksearchbox; 1793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 1838eb02e676db9e5a633e3c88a90beb8a477b1ca1Bjorn Bringertimport android.content.ComponentName; 1938eb02e676db9e5a633e3c88a90beb8a477b1ca1Bjorn Bringert 2093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert/** 2193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * A Suggestion that delegates all calls to other suggestions. 2293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert */ 2393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringertpublic abstract class AbstractSuggestionWrapper implements Suggestion { 2493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 2593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert /** 2693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert * Gets the current suggestion. 2793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert */ 2893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert protected abstract Suggestion current(); 2993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 3093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getShortcutId() { 3193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getShortcutId(); 3293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 3393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 3493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionFormat() { 3593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionFormat(); 3693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 3793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 3893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionIcon1() { 3993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionIcon1(); 4093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 4193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 4293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionIcon2() { 4393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionIcon2(); 4493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 4593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 4693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionIntentAction() { 4793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionIntentAction(); 4893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 4993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 5038eb02e676db9e5a633e3c88a90beb8a477b1ca1Bjorn Bringert public ComponentName getSuggestionIntentComponent() { 5138eb02e676db9e5a633e3c88a90beb8a477b1ca1Bjorn Bringert return current().getSuggestionIntentComponent(); 5238eb02e676db9e5a633e3c88a90beb8a477b1ca1Bjorn Bringert } 5338eb02e676db9e5a633e3c88a90beb8a477b1ca1Bjorn Bringert 5493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionIntentDataString() { 5593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionIntentDataString(); 5693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 5793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 5893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionIntentExtraData() { 5993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionIntentExtraData(); 6093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 6193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 6293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionLogType() { 6393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionLogType(); 6493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 6593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 6693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionQuery() { 6793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionQuery(); 6893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 6993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 7093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public Source getSuggestionSource() { 7193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionSource(); 7293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 7393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 7493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionText1() { 7593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionText1(); 7693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 7793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 7893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionText2() { 7993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionText2(); 8093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 8193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 8293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public String getSuggestionText2Url() { 8393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().getSuggestionText2Url(); 8493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 8593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 8693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public boolean isSpinnerWhileRefreshing() { 8793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().isSpinnerWhileRefreshing(); 8893bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 8993bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 9093bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public boolean isSuggestionShortcut() { 9193bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().isSuggestionShortcut(); 9293bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 9393bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 9493bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert public boolean isWebSearchSuggestion() { 9593bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert return current().isWebSearchSuggestion(); 9693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert } 9793bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert 98fb8ce18922dae59db424fce906b5c113797fe81eBjorn Bringert public boolean isHistorySuggestion() { 99fb8ce18922dae59db424fce906b5c113797fe81eBjorn Bringert return current().isHistorySuggestion(); 100fb8ce18922dae59db424fce906b5c113797fe81eBjorn Bringert } 101fb8ce18922dae59db424fce906b5c113797fe81eBjorn Bringert 1025229b06f00d20aac76cd8519b37f2a579d61c54fMathew Inwood public SuggestionExtras getExtras() { 1035229b06f00d20aac76cd8519b37f2a579d61c54fMathew Inwood return current().getExtras(); 1045229b06f00d20aac76cd8519b37f2a579d61c54fMathew Inwood } 1055229b06f00d20aac76cd8519b37f2a579d61c54fMathew Inwood 10693bd2e70b8b08da1ec37fd0e990dac05551d2e90Bjorn Bringert} 107