docs: protected boolean doScheduledInvalidation() {
          boolean scheduledInvalidationEnabled = _smc.getScheduledInvalidation();
          if (com.ibm.websphere.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_WAS.isLoggable(Level.FINER)) {
              LoggingUtil.SESSION_LOGGER_WAS.entering(methodClassName, methodNames[DO_SCHEDULED_INVALIDATION], "scheduledInvalidationEnabled is " + scheduledInvalidationEnabled);
          }
  
          if (!scheduledInvalidationEnabled || (((BackedStore) getIStore()).remoteInvalReceived && SessionManagerConfig.isDoRemoteInvalidations())) { // then we always do invalidation
              if (com.ibm.websphere.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_WAS.isLoggable(Level.FINER)) {
                  LoggingUtil.SESSION_LOGGER_WAS.exiting(methodClassName, methodNames[DO_SCHEDULED_INVALIDATION], "returning true because scheduled invalidation is not enabled");
              }
              return true;
          }
  
          Calendar current = Calendar.getInstance();
          int currentHour = current.get(Calendar.HOUR_OF_DAY);
  
          int scheduledHour1 = _smc.getInvalTime1();
          int scheduledHour2 = _smc.getInvalTime2();
          if (com.ibm.websphere.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_WAS.isLoggable(Level.FINE)) {
              LoggingUtil.SESSION_LOGGER_WAS.logp(Level.FINE, methodClassName, methodNames[DO_SCHEDULED_INVALIDATION], "currentHour:" + currentHour);
              LoggingUtil.SESSION_LOGGER_WAS.logp(Level.FINE, methodClassName, methodNames[DO_SCHEDULED_INVALIDATION], "scheduled hours are " + scheduledHour1 + " and "
                                                                                                                       + scheduledHour2);
          }
          if (currentHour == scheduledHour1 || currentHour == scheduledHour2) {
              if (com.ibm.websphere.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_WAS.isLoggable(Level.FINER)) {
                  LoggingUtil.SESSION_LOGGER_WAS.exiting(methodClassName, methodNames[DO_SCHEDULED_INVALIDATION], "returning true because current hour matches scheduled hour");
              }
              return true;
          } else {
              if (com.ibm.websphere.ras.TraceComponent.isAnyTracingEnabled() && LoggingUtil.SESSION_LOGGER_WAS.isLoggable(Level.FINER)) {
                  LoggingUtil.SESSION_LOGGER_WAS.exiting(methodClassName, methodNames[DO_SCHEDULED_INVALIDATION],
                                                         "returning false because it is not currently one of the scheduled hours");
              }
              return false;
          }
      }