jetbrains.buildServer.vcs
Interface CollectChangesByCheckoutRules

All Superinterfaces:
CollectChangesPolicy
All Known Subinterfaces:
CollectChangesBetweenRoots
All Known Implementing Classes:
VcsSupport

public interface CollectChangesByCheckoutRules
extends CollectChangesPolicy

This collecting changes policy implies using CheckoutRules for narrowing scope of monitored files within the VCS repository. A simpler approach is presented by CollectChangesByIncludeRules

Since:
4.5
See Also:
CollectChangesByIncludeRules, CheckoutRules

Method Summary
 java.util.List<ModificationData> collectChanges(VcsRoot root, java.lang.String fromVersion, java.lang.String currentVersion, CheckoutRules checkoutRules)
          Returns list of the changes between two revisions given.
 

Method Detail

collectChanges

java.util.List<ModificationData> collectChanges(@NotNull
                                                VcsRoot root,
                                                @NotNull
                                                java.lang.String fromVersion,
                                                @Nullable
                                                java.lang.String currentVersion,
                                                @NotNull
                                                CheckoutRules checkoutRules)
                                                throws VcsException
Returns list of the changes between two revisions given. Implement CurrentVersionIsExpensiveVcsSupport if collectBuildChanges(final VcsRoot root, final String fromVersion, final CheckoutRules checkoutRules) should be invoked instead of this method.

Parameters:
root - current settings.
fromVersion - collect changes from this version.
currentVersion - collect changes up to this version.
checkoutRules - checkout rules built on union of all checkout rules of all configurations connected to the root. Include rules have 'from' part the same as 'to' one so you can don't map file pathes according to include rules.
Returns:
list of changes between specified versions.
Throws:
VcsException - throw this exception if some problem occurred while collecting chanegs or changes cannot be collected because of invalid configuration. Localized message will be shown on the web page for the corresponding project
See Also:
service method, which allows you to collect changes for each root include rule.