Class JobArtifactDownloadService

java.lang.Object
com.bluebell.greenhouse.radicle.services.job.JobArtifactDownloadService

@Service public class JobArtifactDownloadService extends Object
Resolves authorized artifact downloads without exposing opaque storage references.
Version:
3.0.6
Author:
Stephen Prizio
  • Constructor Details

    • JobArtifactDownloadService

      public JobArtifactDownloadService(JobArtifactRepository jobArtifactRepository, @Value("${bluebell.jobs.artifacts.storage-root:data/job-artifacts}") String storageRoot)
      Creates a local artifact resolver rooted at the configured storage directory.
      Parameters:
      jobArtifactRepository - artifact metadata repository
      storageRoot - local storage root
  • Method Details

    • download

      @Transactional(readOnly=true) public ArtifactDownload download(String artifactId)
      Resolves artifact content after expiry and path-boundary checks.
      Parameters:
      artifactId - public artifact identifier
      Returns:
      authorized download