docs: final Result runJob() {
          try {
              // daily jobs check the requirements manually
              if (this instanceof DailyJob || meetsRequirements(true)) {
                  mResult = onRunJob(getParams());
              } else {
                  mResult = getParams().isPeriodic() ? Result.FAILURE : Result.RESCHEDULE;
              }
  
              return mResult;
  
          } finally {
              mFinishedTimeStamp = System.currentTimeMillis();
          }
      }