public void processAllVersions()

in clearcase-server/src/jetbrains/buildServer/buildTriggers/vcs/clearcase/ClearCaseConnection.java [710:741]


  public void processAllVersions(final Revision version, final VersionProcessor versionProcessor, boolean processRoot, boolean useCache) throws VcsException {
    final DateRevision dateRevision = version.getDateRevision();
    if (dateRevision == null) return;

    if (useCache && myCache != null) {
      final CacheElement cache = myCache.getCache(dateRevision, getViewWholePath(), IncludeRule.createDefaultInstance(), myRoot);
      if (cache == null) {
        processAllVersions(version, versionProcessor, processRoot, false);
      }
      else {
        cache.processAllVersions(versionProcessor, processRoot, this);
      }
    }
    else {
      final String directoryVersion = prepare(dateRevision).getWholeName();

      String dirPath = getViewWholePath() + CCParseUtil.CC_VERSION_SEPARATOR + directoryVersion;

      if (processRoot) {
        versionProcessor.processDirectory(dirPath, "", getViewWholePath(), directoryVersion, this);
      }

      try {
        processAllVersionsInternal(dirPath, versionProcessor, "./");
      } finally {
        if (processRoot) {
          versionProcessor.finishProcessingDirectory();
        }
      }
    }

  }