code: private boolean updateCheckIntervalData(final CheckIntervalData currentData,
              final CheckIntervalData nextData) {
          return currentData == nextData
                  || checkIntervalData.compareAndSet(currentData, nextData);
      }
docs: Updates the {@code CheckIntervalData} object. The current data object is replaced
  by the one modified by the last check. The return value indicates whether this was
  successful. If it is <strong>false</strong>, another thread interfered, and the
  whole operation has to be redone.
  
  @param currentData the current check data object
  @param nextData the replacing check data object
  @return a flag whether the update was successful