Enum Class Platform

java.lang.Object
java.lang.Enum<Platform>
me.croabeast.common.updater.Platform
All Implemented Interfaces:
Serializable, Comparable<Platform>, java.lang.constant.Constable

public enum Platform extends Enum<Platform>
Platforms supported by an update checker, each with its API URL template.
  • Enum Constant Details

    • SPIGOT

      public static final Platform SPIGOT
      SpigotMC's resource API. Returns a JSON object with "current_version".
    • MODRINTH

      public static final Platform MODRINTH
      Modrinth's project version API. Returns a JSON array of versions.
    • GITHUB

      public static final Platform GITHUB
      GitHub Releases API. Returns a JSON object for the latest release.
  • Method Details

    • values

      public static Platform[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static Platform valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • extractLatest

      @NotNull public abstract @NotNull String extractLatest(com.google.gson.JsonElement root) throws RuntimeException
      Extracts the latest version from the JSON returned by this platform's API.
      Parameters:
      root - the root JSON element returned by the HTTP request
      Returns:
      the latest version string
      Throws:
      RuntimeException - if the response does not match the expected format