docs: static JobRequest fromCursor(Cursor cursor) {
          JobRequest request = new Builder(cursor).build();
          request.mFailureCount = cursor.getInt(cursor.getColumnIndex(JobStorage.COLUMN_NUM_FAILURES));
          request.mScheduledAt = cursor.getLong(cursor.getColumnIndex(JobStorage.COLUMN_SCHEDULED_AT));
          request.mStarted = cursor.getInt(cursor.getColumnIndex(JobStorage.COLUMN_STARTED)) > 0;
          request.mFlexSupport = cursor.getInt(cursor.getColumnIndex(JobStorage.COLUMN_FLEX_SUPPORT)) > 0;
          request.mLastRun = cursor.getLong(cursor.getColumnIndex(JobStorage.COLUMN_LAST_RUN));
  
          JobPreconditions.checkArgumentNonnegative(request.mFailureCount, "failure count can't be negative");
          JobPreconditions.checkArgumentNonnegative(request.mScheduledAt, "scheduled at can't be negative");
  
          return request;
      }