in clearcase-server/src/jetbrains/buildServer/buildTriggers/vcs/clearcase/ClearCaseConnection.java [1017:1043]
public void processAllParents(@NotNull final Revision version, @NotNull final VersionProcessor versionProcessor, @NotNull final String path) throws VcsException {
collectChangesToIgnore(version);
final File viewPathFile = myViewPath.getClearCaseViewPathFile();
final File vobsPathFile = new File(viewPathFile, Constants.VOBS_NAME_ONLY);
File currentPathFile = new File(path).getParentFile();
while (currentPathFile != null && !currentPathFile.equals(viewPathFile) && !currentPathFile.equals(vobsPathFile)) {
final String pname = currentPathFile.getAbsolutePath();
final Version lastVersion = getLastVersion(pname, false);
if (lastVersion == null) {
final String message = "Cannot find last version for directory \"" + pname + "\"";
LOG.error(message);
throw new VcsException(message);
}
final String directoryVersion = lastVersion.getWholeName();
final String fullPath = pname + CCParseUtil.CC_VERSION_SEPARATOR + directoryVersion;
try {
versionProcessor.processDirectory(fullPath, "", pname, directoryVersion, this);
} finally {
versionProcessor.finishProcessingDirectory();
}
currentPathFile = currentPathFile.getParentFile();
}
}