public abstract class AbstractLocalArtifactHandler extends AbstractArtifactHandler
ALL_AGENT_TYPES, LOCAL_AGENTS, NON_LOCAL_AGENTSLAN_SPEED, LOCAL_SPEED, NEVER_ARCHIVE, WAN_SPEED| Constructor and Description |
|---|
AbstractLocalArtifactHandler(Set<AgentType> supportedAgents) |
| Modifier and Type | Method and Description |
|---|---|
protected abstract ArtifactDirectoryBuilder |
getArtifactDirectoryBuilder(ArtifactHandlerConfigProvider artifactHandlerConfigProvider) |
ArtifactLinkDataProvider |
getArtifactLinkDataProvider(Artifact artifact,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider) |
ArtifactLinkDataProvider |
getArtifactLinkDataProvider(ArtifactLink artifactLink,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider) |
protected File |
getArtifactStorageDirectory(Artifact artifact,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider) |
protected File |
getArtifactStorageDirectory(PlanResultKey planResultKey,
ArtifactDefinitionContext artifact,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider) |
int |
getSpeed(Map<String,String> artifactHandlersConfiguration)
Return approximate transfer speed of this artifact handler in bytes per second for the specified configuration.
|
boolean |
moveArtifactToGlobalStorage(Artifact artifact,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
Move artifact to a 'global storage'.
|
ArtifactHandlerPublishingResult |
publish(PlanResultKey planResultKey,
ArtifactDefinitionContext artifact,
ArtifactPublishingConfig artifactPublishingConfig) |
void |
removeArtifactFromStorage(Artifact artifact,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
Removes artifact files for a single artifact.
|
void |
removeArtifactFromStorage(PlanResultKey planResultKey,
ImmutableArtifactDefinitionBase artifact,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
Removes artifact files for a single artifact.
|
void |
removeArtifactsFromStorage(PlanKey planKey,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
Removes artifact files for all results of a single.
|
void |
removeArtifactsFromStorage(PlanResultKey planResultKey,
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
Removes artifact files for a single plan result.
|
ArtifactRetrievalStatus |
retrieve(ResultKey clientKey,
Artifact artifact,
ArtifactSubscriptionContext artifactSubscription,
ArtifactRetrievalConfig artifactRetrievalConfig)
Retrieve arbitrary
Artifact. |
canHandleArtifact, configProvider, configProvider, getConfigurationKey, getConfigValue, getDefaultConfiguration, getMaxUnarchivedFilesPerArtifact, getModuleDescriptor, getSupportedAgents, init@NotNull public ArtifactHandlerPublishingResult publish(@NotNull PlanResultKey planResultKey, @NotNull ArtifactDefinitionContext artifact, @NotNull ArtifactPublishingConfig artifactPublishingConfig) throws IOException
IOException@NotNull public ArtifactRetrievalStatus retrieve(@NotNull ResultKey clientKey, @NotNull Artifact artifact, @NotNull ArtifactSubscriptionContext artifactSubscription, @NotNull ArtifactRetrievalConfig artifactRetrievalConfig) throws IOException
ArtifactHandlerArtifact. Artifact is found by the information in artifact parameter.clientKey - identifier of plan or deployment doing the downloadartifact - artifact informationartifactSubscription - download details (e.g. target path, copy pattern)artifactRetrievalConfig - handler specific configurationIOExceptionprotected File getArtifactStorageDirectory(PlanResultKey planResultKey, ArtifactDefinitionContext artifact, ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
protected File getArtifactStorageDirectory(Artifact artifact, ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
protected abstract ArtifactDirectoryBuilder getArtifactDirectoryBuilder(ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
public int getSpeed(@NotNull
Map<String,String> artifactHandlersConfiguration)
ArtifactHandlerartifactHandlersConfiguration - artifact handler configurationArtifactHandler.LOCAL_SPEED, ArtifactHandler.LAN_SPEED, ArtifactHandler.WAN_SPEEDpublic void removeArtifactFromStorage(@NotNull
Artifact artifact,
@NotNull
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
ArtifactHandlerpublic void removeArtifactFromStorage(@NotNull
PlanResultKey planResultKey,
@NotNull
ImmutableArtifactDefinitionBase artifact,
@NotNull
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
ArtifactHandlerArtifactLink
Should not remove artifacts that were moved to global storage.public void removeArtifactsFromStorage(@NotNull
PlanResultKey planResultKey,
@NotNull
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
ArtifactHandlerResultsSummary
Should not remove artifacts that were moved to global storage.public void removeArtifactsFromStorage(@NotNull
PlanKey planKey,
@NotNull
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
ArtifactHandlerPlan
Should not remove artifacts that were moved to global storage.public boolean moveArtifactToGlobalStorage(@NotNull
Artifact artifact,
@NotNull
ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
ArtifactHandlerArtifactHandler.removeArtifactFromStorage(Artifact, ArtifactHandlerConfigProvider) is called.
It is not a requirement to physically move the files as long as the above contract is fulfilled.public ArtifactLinkDataProvider getArtifactLinkDataProvider(ArtifactLink artifactLink, @NotNull ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
public ArtifactLinkDataProvider getArtifactLinkDataProvider(Artifact artifact, @NotNull ArtifactHandlerConfigProvider artifactHandlerConfigProvider)
Copyright © 2018 Atlassian Software Systems Pty Ltd. All rights reserved.