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();
}
}
}
}