Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4a0e84b4 authored by Chris Tate's avatar Chris Tate Committed by Android (Google) Code Review
Browse files

Merge "Reschedule jobs that crash partway through" into oc-dev

parents 20959b2d b2087f87
Loading
Loading
Loading
Loading
+15 −2
Original line number Diff line number Diff line
@@ -83,6 +83,9 @@ public class JobInfo implements Parcelable {
    /* Minimum flex for a periodic job, in milliseconds. */
    private static final long MIN_FLEX_MILLIS = 5 * 60 * 1000L; // 5 minutes

    /* Minimum backoff interval for a job, in milliseconds */
    private static final long MIN_BACKOFF_MILLIS = 10 * 1000L;      // 10 seconds

    /**
     * Query the minimum interval allowed for periodic scheduled jobs.  Attempting
     * to declare a smaller period that this when scheduling a job will result in a
@@ -105,6 +108,14 @@ public class JobInfo implements Parcelable {
        return MIN_FLEX_MILLIS;
    }

    /**
     * Query the minimum automatic-reschedule backoff interval permitted for jobs.
     * @hide
     */
    public static final long getMinBackoffMillis() {
        return MIN_BACKOFF_MILLIS;
    }

    /**
     * Default type of backoff.
     * @hide
@@ -361,7 +372,8 @@ public class JobInfo implements Parcelable {
     * job does not recur periodically.
     */
    public long getIntervalMillis() {
        return intervalMillis >= getMinPeriodMillis() ? intervalMillis : getMinPeriodMillis();
        final long minInterval = getMinPeriodMillis();
        return intervalMillis >= minInterval ? intervalMillis : minInterval;
    }

    /**
@@ -381,7 +393,8 @@ public class JobInfo implements Parcelable {
     * to 5 seconds.
     */
    public long getInitialBackoffMillis() {
        return initialBackoffMillis;
        final long minBackoff = getMinBackoffMillis();
        return initialBackoffMillis >= minBackoff ? initialBackoffMillis : minBackoff;
    }

    /**
+2 −1
Original line number Diff line number Diff line
@@ -597,7 +597,8 @@ public class JobServiceContext extends IJobCallback.Stub implements ServiceConne
                service.stopJob(mParams);
            } catch (RemoteException e) {
                Slog.e(TAG, "Error sending onStopJob to client.", e);
                closeAndCleanupJobH(false /* reschedule */);
                // The job's host app apparently crashed during the job, so we should reschedule.
                closeAndCleanupJobH(true /* reschedule */);
            }
        }