Class SvnBambooSpecsHandler

java.lang.Object
com.atlassian.bamboo.repository.svn.v2.AbstractSvnExecutor
com.atlassian.bamboo.repository.svn.v2.SvnBambooSpecsHandler
All Implemented Interfaces:
BambooSpecsHandler

public class SvnBambooSpecsHandler extends AbstractSvnExecutor implements BambooSpecsHandler
  • Constructor Details

    • SvnBambooSpecsHandler

      public SvnBambooSpecsHandler()
  • Method Details

    • detectSpecRevision

      @NotNull public @NotNull Optional<String> detectSpecRevision(@NotNull @NotNull VcsRepositoryData repositoryData, @NotNull @NotNull Object source) throws RepositoryException
      Description copied from interface: BambooSpecsHandler
      Attempts to obtain latest revision from the repository which may have changed Bamboo Specs.
      Specified by:
      detectSpecRevision in interface BambooSpecsHandler
      Parameters:
      repositoryData - repository
      source - entry point to begin scanning (for example: branch name), actual type may depend on repository type
      Returns:
      latest revision or Optional.empty() if BambooSpecsHandler.BAMBOO_SPECS_DIRECTORY doesn't exist.
      Throws:
      RepositoryException
    • isNewer

      public boolean isNewer(@NotNull @NotNull VcsRepositoryData repositoryData, @NotNull @NotNull String rev1, @NotNull @NotNull String rev2)
      Description copied from interface: BambooSpecsHandler
      Returns true if rev2 is a newer revision in the repository than rev1 and therefore the specs should be run. In typical cases, returns true if it is possible to reach rev1 by following parent relationship starting from rev2. Exceptional cases involve suspected force push or 'clear' merges that don't result in changes in specs being connected to the merge commit. In those cases it assumed that rev2 is newer even though no ancestry path exists between rev1 and rev2.
      Specified by:
      isNewer in interface BambooSpecsHandler
    • findCommitsToSpecs

      @NotNull public @NotNull List<CommitContext> findCommitsToSpecs(@NotNull @NotNull VcsRepositoryData repositoryData, @NotNull @NotNull String rev1, @NotNull @NotNull String rev2) throws RepositoryException
      Description copied from interface: BambooSpecsHandler
      Extracts a list of commits related to Bamboo Specs, which occurred between revisions rev1 and rev2.
      Specified by:
      findCommitsToSpecs in interface BambooSpecsHandler
      Throws:
      RepositoryException
    • isWebhookRequired

      public boolean isWebhookRequired()
      Specified by:
      isWebhookRequired in interface BambooSpecsHandler
      Returns:
      true if vcs requires setting webhook for Bamboo Specs processing, false otherwise