Home | History | Annotate | Download | only in server

Lines Matching refs:alarm

59     // The threshold for how long an alarm can be late before we print a
85 private final ArrayList<Alarm> mRtcWakeupAlarms = new ArrayList<Alarm>();
86 private final ArrayList<Alarm> mRtcAlarms = new ArrayList<Alarm>();
87 private final ArrayList<Alarm> mElapsedRealtimeWakeupAlarms = new ArrayList<Alarm>();
88 private final ArrayList<Alarm> mElapsedRealtimeAlarms = new ArrayList<Alarm>();
142 // now that we have initied the driver schedule the alarm
151 Slog.w(TAG, "Failed to open alarm driver. Falling back to a handler.");
174 Alarm alarm = new Alarm();
175 alarm.type = type;
176 alarm.when = triggerAtTime;
177 alarm.repeatInterval = interval;
178 alarm.operation = operation;
180 // Remove this alarm if already scheduled.
183 if (localLOGV) Slog.v(TAG, "set: " + alarm);
185 int index = addAlarmLocked(alarm);
187 setLocked(alarm);
229 // Set the alarm based on the quantum-aligned start time
300 private void removeLocked(ArrayList<Alarm> alarmList,
307 Iterator<Alarm> it = alarmList.iterator();
310 Alarm alarm = it.next();
311 if (alarm.operation.equals(operation)) {
324 private void removeLocked(ArrayList<Alarm> alarmList,
331 Iterator<Alarm> it = alarmList.iterator();
334 Alarm alarm = it.next();
335 if (alarm.operation.getTargetPackage().equals(packageName)) {
348 private void removeUserLocked(ArrayList<Alarm> alarmList, int userHandle) {
354 Iterator<Alarm> it = alarmList.iterator();
357 Alarm alarm = it.next();
358 if (UserHandle.getUserId(alarm.operation.getCreatorUid()) == userHandle) {
371 private boolean lookForPackageLocked(ArrayList<Alarm> alarmList, String packageName) {
380 private ArrayList<Alarm> getAlarmList(int type) {
391 private int addAlarmLocked(Alarm alarm) {
392 ArrayList<Alarm> alarmList = getAlarmList(alarm.type);
394 int index = Collections.binarySearch(alarmList, alarm, mIncreasingTimeOrder);
398 if (localLOGV) Slog.v(TAG, "Adding alarm " + alarm + " at " + index);
399 alarmList.add(index, alarm);
402 // Display the list of alarms for this alarm type
403 Slog.v(TAG, "alarms: " + alarmList.size() + " type: " + alarm.type);
405 for (Alarm a : alarmList) {
423 ArrayList<Alarm> alarmList = getAlarmList(i);
425 Alarm a = alarmList.get(0);
435 private void setLocked(Alarm alarm)
442 if (alarm.when < 0) {
446 alarmSeconds = alarm.when / 1000;
447 alarmNanoseconds = (alarm.when % 1000) * 1000 * 1000;
450 set(mDescriptor, alarm.type, alarmSeconds, alarmNanoseconds);
458 mHandler.sendMessageAtTime(msg, alarm.when);
473 pw.println("Current Alarm Manager state:");
504 pw.println(" Alarm Stats:");
522 private static final void dumpAlarmList(PrintWriter pw, ArrayList<Alarm> list,
525 Alarm a = list.get(i);
538 private void triggerAlarmsLocked(ArrayList<Alarm> alarmList,
539 ArrayList<Alarm> triggerList,
542 Iterator<Alarm> it = alarmList.iterator();
543 ArrayList<Alarm> repeats = new ArrayList<Alarm>();
547 Alarm alarm = it.next();
549 if (localLOGV) Slog.v(TAG, "Checking active alarm when=" + alarm.when + " " + alarm);
551 if (alarm.when > now) {
556 // If the alarm is late, then print a warning message.
559 // case, the reminder alarm will fire immediately.
560 if (localLOGV && now - alarm.when > LATE_ALARM_THRESHOLD) {
561 Slog.v(TAG, "alarm is late! alarm time: " + alarm.when
563 + (now - alarm.when) / 1000);
566 // Recurring alarms may have passed several alarm intervals while the
568 if (localLOGV) Slog.v(TAG, "Alarm triggering: " + alarm);
569 alarm.count = 1;
570 if (alarm.repeatInterval > 0) {
573 alarm.count += (now - alarm.when) / alarm.repeatInterval;
575 triggerList.add(alarm);
577 // remove the alarm from the list
581 if (alarm.repeatInterval > 0) {
582 repeats.add(alarm);
589 Alarm alarm = it.next();
590 alarm.when += alarm.count * alarm.repeatInterval;
591 addAlarmLocked(alarm);
602 public static class IncreasingTimeOrder implements Comparator<Alarm> {
603 public int compare(Alarm a1, Alarm a2) {
616 private static class Alarm {
623 public Alarm() {
633 sb.append("Alarm{");
665 ArrayList<Alarm> triggerList = new ArrayList<Alarm>();
696 Iterator<Alarm> it = triggerList.iterator();
698 Alarm alarm = it.next();
700 if (localLOGV) Slog.v(TAG, "sending alarm " + alarm);
701 alarm.operation.send(mContext, 0,
703 Intent.EXTRA_ALARM_COUNT, alarm.count),
708 setWakelockWorkSource(alarm.operation);
711 mInFlight.add(alarm.operation);
714 BroadcastStats bs = getStatsLocked(alarm.operation);
720 if (alarm.type == AlarmManager.ELAPSED_REALTIME_WAKEUP
721 || alarm.type == AlarmManager.RTC_WAKEUP) {
724 alarm.operation);
727 if (alarm.repeatInterval > 0) {
729 // is a repeating alarm, so toss the hoser.
730 remove(alarm.operation);
733 Slog.w(TAG, "Failure sending alarm.", e);
766 ArrayList<Alarm> triggerList = new ArrayList<Alarm>();
776 Iterator<Alarm> it = triggerList.iterator();
779 Alarm alarm = it.next();
781 alarm.operation.send();
783 if (alarm.repeatInterval > 0) {
785 // is a repeating alarm, so toss the hoser.
786 remove(alarm.operation);
948 Slog.e(TAG, "Alarm wakelock still held but sent queue empty");