in vault-server/src/jetbrains/buildServer/buildTriggers/vcs/vault/VaultVcsSupport.java [277:304]
public IncludeRulePatchBuilder getPatchBuilder(@NotNull final VcsRoot root, @Nullable final String fromVersion, @NotNull final String toVersion) {
final VaultConnection connection = getOrCreateConnection(root);
return new IncludeRulePatchBuilder() {
public void buildPatch(@NotNull final PatchBuilder builder, @NotNull final IncludeRule includeRule) throws VcsException, IOException {
final String targetPath = includeRule.getFrom();
connection.refresh();
if (connection.objectExists(targetPath, null)) {
final VaultPatchBuilder patchBuilder = new VaultPatchBuilder(connection, builder, targetPath);
if (StringUtil.isNotEmpty(fromVersion)) {
//noinspection ConstantConditions
if (!fromVersion.equals(toVersion)) {
patchBuilder.buildIncrementalPatch(fromVersion, toVersion);
}
} else {
patchBuilder.buildCleanPatch(toVersion);
}
}
}
public void dispose() throws VcsException {
connection.resetCaches();
}
};
}