12a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan/* 22a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * Copyright (C) 2012 The Android Open Source Project 32a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * 42a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * Licensed under the Apache License, Version 2.0 (the "License"); 52a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * you may not use this file except in compliance with the License. 62a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * You may obtain a copy of the License at 72a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * 82a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * http://www.apache.org/licenses/LICENSE-2.0 92a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * 102a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * Unless required by applicable law or agreed to in writing, software 112a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * distributed under the License is distributed on an "AS IS" BASIS, 122a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * See the License for the specific language governing permissions and 142a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan * limitations under the License. 152a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan */ 162a7dd0c37ff0aa0378bb01e7230e106ea3c49656Michael Chan 1725b09db869f377b131052447f62ad02e2505cd87Michael Chanpackage com.android.calendar.alerts; 1825b09db869f377b131052447f62ad02e2505cd87Michael Chan 1925b09db869f377b131052447f62ad02e2505cd87Michael Chanimport com.android.calendar.alerts.AlertService.NotificationWrapper; 2025b09db869f377b131052447f62ad02e2505cd87Michael Chan 21948c590ced6854d2fbe9dc765db4ae8d63646664Sara Tingpublic abstract class NotificationMgr { 22948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting public abstract void notify(int id, NotificationWrapper notification); 23948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting public abstract void cancel(int id); 24948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting 25948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting /** 26948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting * Don't actually use the notification framework's cancelAll since the SyncAdapter 27948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting * might post notifications and we don't want to affect those. 28948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting */ 29948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting public void cancelAll() { 30948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting cancelAllBetween(0, AlertService.MAX_NOTIFICATIONS); 31948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting } 32948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting 33948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting /** 34948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting * Cancels IDs between the specified bounds, inclusively. 35948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting */ 36948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting public void cancelAllBetween(int from, int to) { 37948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting for (int i = from; i <= to; i++) { 38948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting cancel(i); 39948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting } 40948c590ced6854d2fbe9dc765db4ae8d63646664Sara Ting } 4125b09db869f377b131052447f62ad02e2505cd87Michael Chan} 42