Interface ArtifactResolver


public interface ArtifactResolver
A resolver for Artifact files. In order for it to be found by XL Deploy it should be annotated with the enclosed ArtifactResolver.Resolver annotation.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static @interface 
    Denote which protocols the ArtifactResolver supports.
  • Method Summary

    Modifier and Type
    Method
    Description
    resolveLocation(com.xebialabs.deployit.plugin.api.udm.artifact.SourceArtifact artifact)
    This method is only called with a SourceArtifact that has a SourceArtifact.getFileUri() URI that contains (one of) the URI schemes that the ArtifactResolver.Resolver annotation specifies.
    boolean
    validateCorrectness(com.xebialabs.deployit.plugin.api.udm.artifact.SourceArtifact artifact)
    Validate whether the SourceArtifact.getFileUri() URI is correct with regards to the scheme specific part of the defined scheme.
  • Method Details

    • resolveLocation

      ResolvedArtifactFile resolveLocation(com.xebialabs.deployit.plugin.api.udm.artifact.SourceArtifact artifact)
      This method is only called with a SourceArtifact that has a SourceArtifact.getFileUri() URI that contains (one of) the URI schemes that the ArtifactResolver.Resolver annotation specifies.
      Parameters:
      artifact - The SourceArtifact for which we need to resolve a ResolvedArtifactFile against its SourceArtifact.getFileUri().
      Returns:
      The ResolvedArtifactFile from which you can obtain the InputStream.
      Throws:
      CannotLocateArtifactException - when the file pointed to by the artifact could not be found at the indicated URI.
    • validateCorrectness

      boolean validateCorrectness(com.xebialabs.deployit.plugin.api.udm.artifact.SourceArtifact artifact)
      Validate whether the SourceArtifact.getFileUri() URI is correct with regards to the scheme specific part of the defined scheme. Only the resolver that "knows about" this scheme is able to do this. NOTE: There is no guarantee that when this method returns
      true
      , that the location actually resolves to a file, or the file is present. It is implementation specific whether this is checked with this call.
      Parameters:
      artifact - The SourceArtifact which needs to be validated with regards to its SourceArtifact.getFileUri().
      Returns:
      true
      iff the URI has a valid scheme specific part, i.e. this ArtifactResolver would be able to resolve it.