Home | History | Annotate | Download | only in server

Lines Matching defs:Alarm

58     // The threshold for how long an alarm can be late before we print a
84 private final ArrayList<Alarm> mRtcWakeupAlarms = new ArrayList<Alarm>();
85 private final ArrayList<Alarm> mRtcAlarms = new ArrayList<Alarm>();
86 private final ArrayList<Alarm> mElapsedRealtimeWakeupAlarms = new ArrayList<Alarm>();
87 private final ArrayList<Alarm> mElapsedRealtimeAlarms = new ArrayList<Alarm>();
139 // now that we have initied the driver schedule the alarm
148 Slog.w(TAG, "Failed to open alarm driver. Falling back to a handler.");
171 Alarm alarm = new Alarm();
172 alarm.type = type;
173 alarm.when = triggerAtTime;
174 alarm.repeatInterval = interval;
175 alarm.operation = operation;
177 // Remove this alarm if already scheduled.
180 if (localLOGV) Slog.v(TAG, "set: " + alarm);
182 int index = addAlarmLocked(alarm);
184 setLocked(alarm);
226 // Set the alarm based on the quantum-aligned start time
290 private void removeLocked(ArrayList<Alarm> alarmList,
297 Iterator<Alarm> it = alarmList.iterator();
300 Alarm alarm = it.next();
301 if (alarm.operation.equals(operation)) {
314 private void removeLocked(ArrayList<Alarm> alarmList,
321 Iterator<Alarm> it = alarmList.iterator();
324 Alarm alarm = it.next();
325 if (alarm.operation.getTargetPackage().equals(packageName)) {
338 private boolean lookForPackageLocked(ArrayList<Alarm> alarmList, String packageName) {
347 private ArrayList<Alarm> getAlarmList(int type) {
358 private int addAlarmLocked(Alarm alarm) {
359 ArrayList<Alarm> alarmList = getAlarmList(alarm.type);
361 int index = Collections.binarySearch(alarmList, alarm, mIncreasingTimeOrder);
365 if (localLOGV) Slog.v(TAG, "Adding alarm " + alarm + " at " + index);
366 alarmList.add(index, alarm);
369 // Display the list of alarms for this alarm type
370 Slog.v(TAG, "alarms: " + alarmList.size() + " type: " + alarm.type);
372 for (Alarm a : alarmList) {
390 ArrayList<Alarm> alarmList = getAlarmList(i);
392 Alarm a = alarmList.get(0);
402 private void setLocked(Alarm alarm)
409 if (alarm.when < 0) {
413 alarmSeconds = alarm.when / 1000;
414 alarmNanoseconds = (alarm.when % 1000) * 1000 * 1000;
417 set(mDescriptor, alarm.type, alarmSeconds, alarmNanoseconds);
425 mHandler.sendMessageAtTime(msg, alarm.when);
440 Alarm Manager state:");
471 pw.println(" Alarm Stats:");
489 private static final void dumpAlarmList(PrintWriter pw, ArrayList<Alarm> list,
492 Alarm a = list.get(i);
505 private void triggerAlarmsLocked(ArrayList<Alarm> alarmList,
506 ArrayList<Alarm> triggerList,
509 Iterator<Alarm> it = alarmList.iterator();
510 ArrayList<Alarm> repeats = new ArrayList<Alarm>();
514 Alarm alarm = it.next();
516 if (localLOGV) Slog.v(TAG, "Checking active alarm when=" + alarm.when + " " + alarm);
518 if (alarm.when > now) {
523 // If the alarm is late, then print a warning message.
526 // case, the reminder alarm will fire immediately.
527 if (localLOGV && now - alarm.when > LATE_ALARM_THRESHOLD) {
528 Slog.v(TAG, "alarm is late! alarm time: " + alarm.when
530 + (now - alarm.when) / 1000);
533 // Recurring alarms may have passed several alarm intervals while the
535 if (localLOGV) Slog.v(TAG, "Alarm triggering: " + alarm);
536 alarm.count = 1;
537 if (alarm.repeatInterval > 0) {
540 alarm.count += (now - alarm.when) / alarm.repeatInterval;
542 triggerList.add(alarm);
544 // remove the alarm from the list
548 if (alarm.repeatInterval > 0) {
549 repeats.add(alarm);
556 Alarm alarm = it.next();
557 alarm.when += alarm.count * alarm.repeatInterval;
558 addAlarmLocked(alarm);
569 public static class IncreasingTimeOrder implements Comparator<Alarm> {
570 public int compare(Alarm a1, Alarm a2) {
583 private static class Alarm {
590 public Alarm() {
600 sb.append("Alarm{");
632 ArrayList<Alarm> triggerList = new ArrayList<Alarm>();
663 Iterator<Alarm> it = triggerList.iterator();
665 Alarm alarm = it.next();
667 if (localLOGV) Slog.v(TAG, "sending alarm " + alarm);
668 alarm.operation.send(mContext, 0,
670 Intent.EXTRA_ALARM_COUNT, alarm.count),
675 setWakelockWorkSource(alarm.operation);
678 mInFlight.add(alarm.operation);
681 BroadcastStats bs = getStatsLocked(alarm.operation);
687 if (alarm.type == AlarmManager.ELAPSED_REALTIME_WAKEUP
688 || alarm.type == AlarmManager.RTC_WAKEUP) {
691 alarm.operation);
694 if (alarm.repeatInterval > 0) {
696 // is a repeating alarm, so toss the hoser.
697 remove(alarm.operation);
700 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);
909 Slog.e(TAG, "Alarm wakelock still held but sent queue empty");