com.atlassian.bamboo.v2.build
Interface BuildChanges

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
BuildChangesImpl

public interface BuildChanges
extends java.io.Serializable

Class that encapsulates the repository changes for a particular build result


Method Summary
 void addRepositoryChanges(BuildRepositoryChanges repositoryChanges)
           
 BuildRepositoryChanges getBuildRepositoryChanges(long repositoryId)
           
 java.util.List<CommitContext> getChanges()
          Get changes from all repositories
 java.util.List<CommitContext> getChanges(long repositoryId)
          List of Commit objects that triggered off this particular build.
 java.lang.String getIntegrationBranchVcsRevision()
          The current revision of the integration branch, that one that was detected during detecting all other changes.
 long getIntegrationRepositoryId()
           
 java.lang.String getPreviousVcsRevisionKey(long repositoryId)
          Returns a Repository dependent "id" for previous state of repository, so change is between previousVcsRevisionKey and vcsRevisionKey This is value is taken from the Repository as to be internally consistent
 java.lang.Iterable<BuildRepositoryChanges> getRepositoryChanges()
           
 int getSkippedCommitsCount(long repositoryId)
          The number of commits that were included in this buildChanges, but their details were skipped (because there was too many commits to keep them all in this buildChanges)
 java.lang.String getVcsLastChangeRevisionKey(long repositoryId)
          Returns a Repository dependent "id" for last change for repository subpath - currently implemented for Subversion ONLY This is value is taken from the Repository as to be internally consistent
 PlanVcsRevisionData getVcsRevisionData(long repositoryId)
          Returns PlanVcsRevisionData containing Repository dependent vcs revision data for this checkout.
 java.lang.String getVcsRevisionKey(long repositoryId)
          Returns a Repository dependent "id" for this checkout.
 void setChanges(long repositoryId, java.util.List<CommitContext> changes)
           
 void setIntegrationBranchVcsRevision(java.lang.String revision)
           
 void setIntegrationRepositoryId(long integrationRepositoryId)
           
 void setPreviousVcsRevisionKey(long repositoryId, java.lang.String previousVcsRevisionKey)
           
 void setSkippedCommitsCount(long repositoryId, int skippedCommitsCount)
           
 void setVcsLastChangeRevisionKey(long repositoryId, java.lang.String vcsRevisionKeyForSubpath)
           
 void setVcsRevisionKey(long repositoryId, java.lang.String vcsRevisionKey)
           
 

Method Detail

addRepositoryChanges

void addRepositoryChanges(@NotNull
                          BuildRepositoryChanges repositoryChanges)

getRepositoryChanges

java.lang.Iterable<BuildRepositoryChanges> getRepositoryChanges()

getVcsRevisionKey

@Nullable
java.lang.String getVcsRevisionKey(long repositoryId)
Returns a Repository dependent "id" for this checkout. e.g. date timestamp for CVS, revision number for SVN etc. This is value is taken from the Repository as to be internally consistent

Returns:
Revision "id"

setVcsRevisionKey

void setVcsRevisionKey(long repositoryId,
                       @NotNull
                       java.lang.String vcsRevisionKey)

getVcsRevisionData

@NotNull
PlanVcsRevisionData getVcsRevisionData(long repositoryId)
Returns PlanVcsRevisionData containing Repository dependent vcs revision data for this checkout.

Parameters:
repositoryId -
Returns:

getPreviousVcsRevisionKey

java.lang.String getPreviousVcsRevisionKey(long repositoryId)
Returns a Repository dependent "id" for previous state of repository, so change is between previousVcsRevisionKey and vcsRevisionKey This is value is taken from the Repository as to be internally consistent

Returns:

setPreviousVcsRevisionKey

void setPreviousVcsRevisionKey(long repositoryId,
                               @Nullable
                               java.lang.String previousVcsRevisionKey)

getVcsLastChangeRevisionKey

java.lang.String getVcsLastChangeRevisionKey(long repositoryId)
Returns a Repository dependent "id" for last change for repository subpath - currently implemented for Subversion ONLY This is value is taken from the Repository as to be internally consistent

Returns:

setVcsLastChangeRevisionKey

void setVcsLastChangeRevisionKey(long repositoryId,
                                 java.lang.String vcsRevisionKeyForSubpath)

getChanges

@NotNull
java.util.List<CommitContext> getChanges(long repositoryId)
List of Commit objects that triggered off this particular build. Returns empty collection if no changes returned.

Parameters:
repositoryId -
Returns:
List of Commits. May be empty

getChanges

@NotNull
java.util.List<CommitContext> getChanges()
Get changes from all repositories

Returns:

setChanges

void setChanges(long repositoryId,
                @NotNull
                java.util.List<CommitContext> changes)

getSkippedCommitsCount

int getSkippedCommitsCount(long repositoryId)
The number of commits that were included in this buildChanges, but their details were skipped (because there was too many commits to keep them all in this buildChanges)

Returns:
number of skipped commits

setSkippedCommitsCount

void setSkippedCommitsCount(long repositoryId,
                            int skippedCommitsCount)

getIntegrationBranchVcsRevision

@Nullable
java.lang.String getIntegrationBranchVcsRevision()
The current revision of the integration branch, that one that was detected during detecting all other changes. Used by automerge tool.

Returns:
Revision "id"

setIntegrationBranchVcsRevision

void setIntegrationBranchVcsRevision(@NotNull
                                     java.lang.String revision)

getIntegrationRepositoryId

long getIntegrationRepositoryId()

setIntegrationRepositoryId

void setIntegrationRepositoryId(long integrationRepositoryId)

getBuildRepositoryChanges

@NotNull
BuildRepositoryChanges getBuildRepositoryChanges(long repositoryId)
Parameters:
repositoryId - repository id
Returns:
complete BuildRepositoryChanges object for a specified repository id.
Throws:
java.lang.IllegalArgumentException - if the repository is not included in this changeset.


Copyright © 2013 Atlassian Software Systems Pty Ltd. All Rights Reserved.