Class ReleaseNotFoundException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
io.github.intisy.gradle.github.api.ReleaseNotFoundException
All Implemented Interfaces:
Serializable

public class ReleaseNotFoundException extends RuntimeException
Thrown when no release matches the requested tag at all: a typo'd version, a deleted or renamed tag, or a version that was simply never released.

This is almost always a caller error, not a normal outcome, which is why Releases.downloadJar(java.lang.String, java.lang.String, java.lang.String) never absorbs it into an empty Optional the way it does for ArtifactNotFoundException (a release that exists but does not carry the requested asset). Confusing the two would make a typo'd version silently vanish from a build instead of failing it.

See Also:
  • Constructor Details

    • ReleaseNotFoundException

      public ReleaseNotFoundException(String message, String coordinate, List<String> tagsTried)
      Parameters:
      message - the detailed, user-facing error message.
      coordinate - the owner/repo:version coordinate that could not be found.
      tagsTried - every tag variant that was tried and did not resolve.
  • Method Details

    • getCoordinate

      public String getCoordinate()
      Returns:
      the owner/repo:version coordinate that could not be found.
    • getTagsTried

      public List<String> getTagsTried()
      Returns:
      every tag variant that was tried and did not resolve to a release.