Class SVNProcess

java.lang.Object
org.savantbuild.dep.workflow.process.SVNProcess
All Implemented Interfaces:
Process

public class SVNProcess extends Object implements Process
This is an implementation of the Process that uses the SVNKit SubVersion library to fetch and publish artifacts from/to a SubVersion repository using SubVersion export and import commands.
  • Field Details

    • output

      public final org.savantbuild.output.Output output
    • password

      public final String password
    • repository

      public final String repository
    • username

      public final String username
  • Constructor Details

    • SVNProcess

      public SVNProcess(org.savantbuild.output.Output output, String repository, String username, String password)
  • Method Details

    • fetch

      public FetchResult fetch(ResolvableItem item, PublishWorkflow publishWorkflow) throws ProcessFailureException
      Fetches the artifact from the SubVersion repository by performing an export to a temporary file and checking the MD5 sum if it exists.
      Specified by:
      fetch in interface Process
      Parameters:
      item - The item to fetch.
      publishWorkflow - The publish workflow used to publish the artifact after it has been successfully fetched.
      Returns:
      The FetchResult or null if it doesn't exist.
      Throws:
      ProcessFailureException - If the SVN fetch failed.
    • publish

      public Path publish(FetchResult fetchResult) throws ProcessFailureException
      Publishes the given artifact item into the SubVersion repository.
      Specified by:
      publish in interface Process
      Parameters:
      fetchResult - The fetch result containing the item and file.
      Returns:
      Always null.
      Throws:
      ProcessFailureException - If the publish fails.
    • toString

      public String toString()
      Overrides:
      toString in class Object