18188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski/* 28188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Copyright (C) 2013 The Android Open Source Project 38188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 48188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Licensed under the Apache License, Version 2.0 (the "License"); 58188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * you may not use this file except in compliance with the License. 68188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * You may obtain a copy of the License at 78188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 88188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * http://www.apache.org/licenses/LICENSE-2.0 98188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 108188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Unless required by applicable law or agreed to in writing, software 118188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * distributed under the License is distributed on an "AS IS" BASIS, 128188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 138188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * See the License for the specific language governing permissions and 148188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * limitations under the License. 158188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 168188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowskipackage com.android.deskclock.provider; 178188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 188188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowskiimport android.net.Uri; 198188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowskiimport android.provider.BaseColumns; 208188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 21e8cbcd82d372e6f5b5fb9e814344358c28f544b9Justin Klaassenimport com.android.deskclock.BuildConfig; 22e8cbcd82d372e6f5b5fb9e814344358c28f544b9Justin Klaassen 238188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski/** 248188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p> 258188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * The contract between the clock provider and desk clock. Contains 268188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * definitions for the supported URIs and data columns. 278188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * </p> 288188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <h3>Overview</h3> 298188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p> 308188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * ClockContract defines the data model of clock related information. 318188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * This data is stored in a number of tables: 328188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * </p> 338188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <ul> 348188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <li>The {@link AlarmsColumns} table holds the user created alarms</li> 358188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <li>The {@link InstancesColumns} table holds the current state of each 368188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * alarm in the AlarmsColumn table. 378188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * </li> 388188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * </ul> 398188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 408188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowskipublic final class ClockContract { 418188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 428188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * This authority is used for writing to or querying from the clock 438188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * provider. 448188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 45e8cbcd82d372e6f5b5fb9e814344358c28f544b9Justin Klaassen public static final String AUTHORITY = BuildConfig.APPLICATION_ID; 468188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 478188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 488188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * This utility class cannot be instantiated 498188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 508188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski private ClockContract() {} 518188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 528188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 53ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Constants for tables with AlarmSettings. 54ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 55ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski private interface AlarmSettingColumns extends BaseColumns { 56ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 57ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * This string is used to indicate no ringtone. 58ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 590750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux Uri NO_RINGTONE_URI = Uri.EMPTY; 60ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 61ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 62ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * This string is used to indicate no ringtone. 63ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 640750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String NO_RINGTONE = NO_RINGTONE_URI.toString(); 65ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 66ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 67ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * True if alarm should vibrate 68ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * <p>Type: BOOLEAN</p> 69ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 700750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String VIBRATE = "vibrate"; 71ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 72ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 73ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm label. 74ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 75ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * <p>Type: STRING</p> 76ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 770750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String LABEL = "label"; 78ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 79ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 80ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Audio alert to play when alarm triggers. Null entry 81ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * means use system default and entry that equal 82ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Uri.EMPTY.toString() means no ringtone. 83ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 84ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * <p>Type: STRING</p> 85ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 860750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String RINGTONE = "ringtone"; 87ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski } 88ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 89ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 908188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Constants for the Alarms table, which contains the user created alarms. 918188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 92ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski protected interface AlarmsColumns extends AlarmSettingColumns, BaseColumns { 938188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 948188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * The content:// style URL for this table. 958188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 960750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/alarms"); 978188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 988188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 99381f4f17c8b2d4f0aac35eca56a315d129c5fb1eAnnie Chin * The content:// style URL for the alarms with instance tables, which is used to get the 100381f4f17c8b2d4f0aac35eca56a315d129c5fb1eAnnie Chin * next firing instance and the current state of an alarm. 101381f4f17c8b2d4f0aac35eca56a315d129c5fb1eAnnie Chin */ 1020750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux Uri ALARMS_WITH_INSTANCES_URI = Uri.parse("content://" + AUTHORITY 103381f4f17c8b2d4f0aac35eca56a315d129c5fb1eAnnie Chin + "/alarms_with_instances"); 104381f4f17c8b2d4f0aac35eca56a315d129c5fb1eAnnie Chin 105381f4f17c8b2d4f0aac35eca56a315d129c5fb1eAnnie Chin /** 1068188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Hour in 24-hour localtime 0 - 23. 1078188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 1088188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 1090750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String HOUR = "hour"; 1108188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 1118188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 1128188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Minutes in localtime 0 - 59. 1138188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 1148188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 1150750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String MINUTES = "minutes"; 1168188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 1178188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 1188188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Days of the week encoded as a bit set. 1198188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 1208188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 1218188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * {@link DaysOfWeek} 1228188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 1230750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String DAYS_OF_WEEK = "daysofweek"; 1248188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 1258188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 1268188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * True if alarm is active. 1278188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: BOOLEAN</p> 1288188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 1290750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String ENABLED = "enabled"; 1308188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 1318188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 1328188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Determine if alarm is deleted after it has been used. 1338188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 1348188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 1350750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String DELETE_AFTER_USE = "delete_after_use"; 1368188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski } 1378188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 1388188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 1398188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Constants for the Instance table, which contains the state of each alarm. 1408188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 141ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski protected interface InstancesColumns extends AlarmSettingColumns, BaseColumns { 1428188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 1438188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * The content:// style URL for this table. 1448188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 1450750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/instances"); 1468188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 1478188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 148ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state when to show no notification. 149ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 150ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 151ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * LOW_NOTIFICATION_STATE 152ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 1530750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int SILENT_STATE = 0; 154ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 155ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 156ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state to show low priority alarm notification. 157ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 158ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 159ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * HIDE_NOTIFICATION_STATE 160ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * HIGH_NOTIFICATION_STATE 161ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * DISMISSED_STATE 162ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 1630750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int LOW_NOTIFICATION_STATE = 1; 164ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 165ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 166ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state to hide low priority alarm notification. 167ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 168ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 169ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * HIGH_NOTIFICATION_STATE 170ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 1710750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int HIDE_NOTIFICATION_STATE = 2; 172ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 173ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 174ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state to show high priority alarm notification. 175ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 176ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 177ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * DISMISSED_STATE 178ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * FIRED_STATE 179ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 1800750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int HIGH_NOTIFICATION_STATE = 3; 181ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 182ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 183ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state when alarm is in snooze. 184ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 185ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 186ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * DISMISSED_STATE 187ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * FIRED_STATE 188ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 1890750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int SNOOZE_STATE = 4; 190ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 191ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 192ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state when alarm is being fired. 193ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 194ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 195ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * DISMISSED_STATE 196ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * SNOOZED_STATE 197ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * MISSED_STATE 198ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 1990750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int FIRED_STATE = 5; 200ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 201ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 202ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state when alarm has been missed. 203ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * 204ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Can transitions to: 205ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * DISMISSED_STATE 206ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 2070750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int MISSED_STATE = 6; 208ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 209ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 210ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski * Alarm state when alarm is done. 211ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski */ 2120750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int DISMISSED_STATE = 7; 213ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski 214ab0d28c68a77bea2a4a2ee50378da3670a1dd939Paul Sliwowski /** 215f855d573817c0437b6b84aa6a743e65b9d10f476Annie Chin * Alarm state when alarm has been dismissed before its intended firing time. 216f855d573817c0437b6b84aa6a743e65b9d10f476Annie Chin */ 2170750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux int PREDISMISSED_STATE = 8; 218f855d573817c0437b6b84aa6a743e65b9d10f476Annie Chin 219f855d573817c0437b6b84aa6a743e65b9d10f476Annie Chin /** 2208188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Alarm year. 2218188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 2228188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 2238188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2240750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String YEAR = "year"; 2258188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 2268188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 2278188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Alarm month in year. 2288188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 2298188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 2308188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2310750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String MONTH = "month"; 2328188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 2338188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 2348188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Alarm day in month. 2358188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * 2368188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 2378188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2380750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String DAY = "day"; 2398188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 2408188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 2418188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Alarm hour in 24-hour localtime 0 - 23. 2428188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 2438188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2440750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String HOUR = "hour"; 2458188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 2468188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 2478188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Alarm minutes in localtime 0 - 59 2488188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 2498188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2500750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String MINUTES = "minutes"; 2518188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 2528188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 2538188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Foreign key to Alarms table 2548188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER (long)</p> 2558188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2560750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String ALARM_ID = "alarm_id"; 2578188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski 2588188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski /** 2598188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * Alarm state 2608188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski * <p>Type: INTEGER</p> 2618188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski */ 2620750923e1ee389c0987e19801ec12d5de53d4b57James Lemieux String ALARM_STATE = "alarm_state"; 2638188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski } 2648188813bc869d3df4885f9c2972f9cc85745b59bPaul Sliwowski} 265