public interface BuildPatchByCheckoutRules extends BuildPatchPolicy
|Modifier and Type||Method and Description|
Called to retrieve detailed info on modification between two given revisions.
void buildPatch(@NotNull VcsRoot root, @Nullable java.lang.String fromVersion, @NotNull java.lang.String toVersion, @NotNull PatchBuilder builder, @NotNull CheckoutRules checkoutRules) throws java.io.IOException, VcsException
root- current settings
fromVersion- collect files, changed since this version. If it is null, collect all project files for 'toVersion' parameter (full checkout patch).
toVersion- collect files, changed between 'fromVersion' and this version
builder- call methods of this interface in order to build patch.
checkoutRules- checkout rules for sources to get.
java.io.IOException- rethrow this exception, if it will be thrown from some PatchBuilder method
VcsException- throw this exception if some problem occurred while collecting changes or changes cannot be collected because of invalid configuration. Localized message will be shown on the web page for the corresponding project.
IncrementalPatchImpossibleException- if this exception is thrown during building an incremental patch (fromVersion is not null) this method will be called again with fromVersion set to null, i.e. full checkout patch will be requested. This is useful for the situation when the underlying VCS repository has forgotten the fromVersion for some reason and therefore VCS support is unable to extract the differences.
service class prevents you from manual mapping of file pathes.