Class BlobStoreProvider
java.lang.Object
hudson.model.AbstractDescribableImpl<BlobStoreProvider>
io.jenkins.plugins.artifact_manager_jclouds.BlobStoreProvider
- All Implemented Interfaces:
ExtensionPoint,Describable<BlobStoreProvider>,Serializable
- Direct Known Subclasses:
S3BlobStore
@Restricted(org.kohsuke.accmod.restrictions.Beta.class)
public abstract class BlobStoreProvider
extends AbstractDescribableImpl<BlobStoreProvider>
implements ExtensionPoint, Serializable
Provider for jclouds-based blob stores usable for artifact storage.
An instance will be copied into a build record together with any fields it defines.
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionartifactUrls(Map<String, String> artifacts, Map<String, String> contentTypes, org.jclouds.blobstore.BlobStore blobStore, String key) protected StringgetBlobPath(String key, String path) abstract StringA constant for the blob container name to use.abstract org.jclouds.blobstore.BlobStoreContextCreates the jclouds handle for working with blob.abstract StringA constant for the blob path prefix to use.abstract booleanA constant to define whether we should delete artifacts or leave them to be managed on the blob service side.abstract booleanA constant to define whether we should delete stashes or leave them to be managed on the blob service side.abstract URLtoExternalURL(org.jclouds.blobstore.domain.Blob blob, BlobStoreProvider.HttpMethod httpMethod) Generate a URL valid for downloading OR uploading the blob for a limited period of timeabstract URIGet a provider-specific URI.
-
Constructor Details
-
BlobStoreProvider
public BlobStoreProvider()
-
-
Method Details
-
getPrefix
A constant for the blob path prefix to use. -
getContainer
A constant for the blob container name to use. -
isDeleteArtifacts
public abstract boolean isDeleteArtifacts()A constant to define whether we should delete artifacts or leave them to be managed on the blob service side. -
isDeleteStashes
public abstract boolean isDeleteStashes()A constant to define whether we should delete stashes or leave them to be managed on the blob service side. -
getContext
Creates the jclouds handle for working with blob.- Throws:
IOException
-
toURI
Get a provider-specific URI.- Parameters:
container- container where this exists.key- fully qualified name relative to the container.- Returns:
- the URI
-
toExternalURL
@NonNull public abstract URL toExternalURL(@NonNull org.jclouds.blobstore.domain.Blob blob, @NonNull BlobStoreProvider.HttpMethod httpMethod) throws IOException Generate a URL valid for downloading OR uploading the blob for a limited period of time- Parameters:
blob- blob to generate the URL forhttpMethod- HTTP method to create a URL for (downloads or uploads)- Returns:
- the URL
- Throws:
IOException
-
getDescriptor
- Specified by:
getDescriptorin interfaceDescribable<BlobStoreProvider>- Overrides:
getDescriptorin classAbstractDescribableImpl<BlobStoreProvider>
-
artifactUrls
public Map<String,URL> artifactUrls(Map<String, String> artifacts, Map<String, throws IOExceptionString> contentTypes, org.jclouds.blobstore.BlobStore blobStore, String key) - Throws:
IOException
-
getBlobPath
-