• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package com.android.providers.calendar;
2 
3 import android.accounts.Account;
4 import android.app.PendingIntent;
5 import android.content.ContentResolver;
6 import android.content.Context;
7 import android.net.Uri;
8 import android.os.PowerManager;
9 
10 import java.util.concurrent.atomic.AtomicBoolean;
11 
12 public class CalendarProvider2ForTesting extends CalendarProvider2 {
13 
14     /**
15      * For testing, don't want to start the TimezoneCheckerThread, as it results
16      * in race conditions.  Thus updateTimezoneDependentFields is stubbed out.
17      */
18     @Override
updateTimezoneDependentFields()19     protected void updateTimezoneDependentFields() {
20     }
21 
22     /**
23      * For testing, don't want onAccountsUpdated asynchronously deleting data.
24      */
25     @Override
onAccountsUpdated(Account[] accounts)26     public void onAccountsUpdated(Account[] accounts) {
27     }
28 
29     @Override
doUpdateTimezoneDependentFields()30     protected void doUpdateTimezoneDependentFields() {
31     }
32 
33     @Override
postInitialize()34     protected void postInitialize() {
35     }
36 
37     @Override
initCalendarAlarm()38     protected void initCalendarAlarm() {
39         mCalendarAlarm = new MockCalendarAlarmManager(getContext());
40     }
41 
42     @Override
shouldSyncFor(Uri uri)43     protected boolean shouldSyncFor(Uri uri) {
44         return true;
45     }
46 
47     private static class MockCalendarAlarmManager extends CalendarAlarmManager {
48 
MockCalendarAlarmManager(Context context)49         public MockCalendarAlarmManager(Context context) {
50             super(context);
51         }
52 
53         @Override
initializeWithContext(Context context)54         protected void initializeWithContext(Context context) {
55             mContext = context;
56             mNextAlarmCheckScheduled = new AtomicBoolean(false);
57             mAlarmLock = new Object();
58         }
59 
60         @Override
set(int type, long triggerAtTime, PendingIntent operation)61         public void set(int type, long triggerAtTime, PendingIntent operation) {
62         }
63 
64         @Override
setExact(int type, long triggerAtTime, PendingIntent operation)65         public void setExact(int type, long triggerAtTime, PendingIntent operation) {
66         }
67 
68         @Override
setExactAndAllowWhileIdle(int type, long triggerAtTime, PendingIntent operation)69         public void setExactAndAllowWhileIdle(int type, long triggerAtTime,
70                 PendingIntent operation) {
71         }
72 
73         @Override
cancel(PendingIntent operation)74         public void cancel(PendingIntent operation) {
75         }
76 
77         @Override
scheduleAlarm(long alarmTime)78         public void scheduleAlarm(long alarmTime) {
79         }
80 
81         @Override
rescheduleMissedAlarms(ContentResolver cr)82         public void rescheduleMissedAlarms(ContentResolver cr) {
83         }
84     }
85 }
86