Home | History | Annotate | Download | only in server

Lines Matching refs:alarm

57     // The threshold for how long an alarm can be late before we print a
80 private final ArrayList<Alarm> mRtcWakeupAlarms = new ArrayList<Alarm>();
81 private final ArrayList<Alarm> mRtcAlarms = new ArrayList<Alarm>();
82 private final ArrayList<Alarm> mElapsedRealtimeWakeupAlarms = new ArrayList<Alarm>();
83 private final ArrayList<Alarm> mElapsedRealtimeAlarms = new ArrayList<Alarm>();
137 // now that we have initied the driver schedule the alarm
146 Slog.w(TAG, "Failed to open alarm driver. Falling back to a handler.");
169 Alarm alarm = new Alarm();
170 alarm.type = type;
171 alarm.when = triggerAtTime;
172 alarm.repeatInterval = interval;
173 alarm.operation = operation;
175 // Remove this alarm if already scheduled.
178 if (localLOGV) Slog.v(TAG, "set: " + alarm);
180 int index = addAlarmLocked(alarm);
182 setLocked(alarm);
203 // unbucketed recurring alarm implementation
209 // Align bucketed alarm deliveries by trying to match
223 // Align the new alarm with the existing bucketed sequence. To achieve
241 // fixup required) and set the alarm with the new, bucketed start time.
309 private void removeLocked(ArrayList<Alarm> alarmList,
316 Iterator<Alarm> it = alarmList.iterator();
319 Alarm alarm = it.next();
320 if (alarm.operation.equals(operation)) {
333 private void removeLocked(ArrayList<Alarm> alarmList,
340 Iterator<Alarm> it = alarmList.iterator();
343 Alarm alarm = it.next();
344 if (alarm.operation.getTargetPackage().equals(packageName)) {
357 private boolean lookForPackageLocked(ArrayList<Alarm> alarmList, String packageName) {
366 private ArrayList<Alarm> getAlarmList(int type) {
377 private int addAlarmLocked(Alarm alarm) {
378 ArrayList<Alarm> alarmList = getAlarmList(alarm.type);
380 int index = Collections.binarySearch(alarmList, alarm, mIncreasingTimeOrder);
384 if (localLOGV) Slog.v(TAG, "Adding alarm " + alarm + " at " + index);
385 alarmList.add(index, alarm);
388 // Display the list of alarms for this alarm type
389 Slog.v(TAG, "alarms: " + alarmList.size() + " type: " + alarm.type);
391 for (Alarm a : alarmList) {
409 ArrayList<Alarm> alarmList = getAlarmList(i);
411 Alarm a = alarmList.get(0);
421 private void setLocked(Alarm alarm)
428 if (alarm.when < 0) {
432 alarmSeconds = alarm.when / 1000;
433 alarmNanoseconds = (alarm.when % 1000) * 1000 * 1000;
436 set(mDescriptor, alarm
444 mHandler.sendMessageAtTime(msg, alarm.when);
459 pw.println("Current Alarm Manager state:");
490 pw.println(" Alarm Stats:");
507 private static final void dumpAlarmList(PrintWriter pw, ArrayList<Alarm> list,
510 Alarm a = list.get(i);
523 private void triggerAlarmsLocked(ArrayList<Alarm> alarmList,
524 ArrayList<Alarm> triggerList,
527 Iterator<Alarm> it = alarmList.iterator();
528 ArrayList<Alarm> repeats = new ArrayList<Alarm>();
532 Alarm alarm = it.next();
534 if (localLOGV) Slog.v(TAG, "Checking active alarm when=" + alarm.when + " " + alarm);
536 if (alarm.when > now) {
541 // If the alarm is late, then print a warning message.
544 // case, the reminder alarm will fire immediately.
545 if (localLOGV && now - alarm.when > LATE_ALARM_THRESHOLD) {
546 Slog.v(TAG, "alarm is late! alarm time: " + alarm.when
548 + (now - alarm.when) / 1000);
551 // Recurring alarms may have passed several alarm intervals while the
553 if (localLOGV) Slog.v(TAG, "Alarm triggering: " + alarm);
554 alarm.count = 1;
555 if (alarm.repeatInterval > 0) {
558 alarm.count += (now - alarm.when) / alarm.repeatInterval;
560 triggerList.add(alarm);
562 // remove the alarm from the list
566 if (alarm.repeatInterval > 0) {
567 repeats.add(alarm);
574 Alarm alarm = it.next();
575 alarm.when += alarm.count * alarm.repeatInterval;
576 addAlarmLocked(alarm);
587 public static class IncreasingTimeOrder implements Comparator<Alarm> {
588 public int compare(Alarm a1, Alarm a2) {
601 private static class Alarm {
608 public Alarm() {
618 sb.append("Alarm{");
650 ArrayList<Alarm> triggerList = new ArrayList<Alarm>();
680 Iterator<Alarm> it = triggerList.iterator();
682 Alarm alarm = it.next();
684 if (localLOGV) Slog.v(TAG, "sending alarm " + alarm);
685 alarm.operation.send(mContext, 0,
687 Intent.EXTRA_ALARM_COUNT, alarm.count),
696 BroadcastStats bs = getStatsLocked(alarm.operation);
702 if (alarm.type == AlarmManager.ELAPSED_REALTIME_WAKEUP
703 || alarm.type == AlarmManager.RTC_WAKEUP) {
706 alarm.operation);
709 if (alarm.repeatInterval > 0) {
711 // is a repeating alarm, so toss the hoser.
712 remove(alarm.operation);
715 Slog.w(TAG, "Failure sending alarm.", e);
733 ArrayList<Alarm> triggerList = new ArrayList<Alarm>();
743 Iterator<Alarm> it = triggerList.iterator();
746 Alarm alarm = it.next();
748 alarm.operation.send();
750 if (alarm.repeatInterval > 0) {
752 // is a repeating alarm, so toss the hoser.
753 remove(alarm.operation);