Interface ApplicationRepository


public interface ApplicationRepository
Application repository contract.

Implementations must verify checksums before accepting bundles and must reject overwriting immutable artifacts.

  • Method Details

    • publish

      Publishes a bundle under its exact application coordinate.
      Parameters:
      bundle - bundle to publish
      options - repository publish options
      Returns:
      publish result with safe diagnostic messages
    • fetch

      Fetches a bundle by exact coordinate.
      Parameters:
      coordinate - exact application coordinate
      Returns:
      immutable bundle descriptor
    • listVersions

      List<ApplicationVersion> listVersions(ApplicationId applicationId)
      Lists immutable versions known for the supplied application id.
      Parameters:
      applicationId - application id to query
      Returns:
      versions sorted by repository implementation policy
    • verify

      Verifies the stored bundle for an exact coordinate.
      Parameters:
      coordinate - exact application coordinate
      Returns:
      structured verification result
    • promote

      ApplicationDeploymentResult promote(ApplicationCoordinate coordinate, String environment)
      Promotes a coordinate to an environment marker.
      Parameters:
      coordinate - exact application coordinate
      environment - target environment name
      Returns:
      promotion result
    • demote

      ApplicationDeploymentResult demote(ApplicationCoordinate coordinate, String environment)
      Removes a coordinate promotion from an environment marker.
      Parameters:
      coordinate - exact application coordinate
      environment - environment name
      Returns:
      demotion result
    • status

      Returns a safe status snapshot for this repository.
      Returns:
      repository status