Interface GeyserBootstrap


public interface GeyserBootstrap
  • Field Details

  • Method Details

    • onGeyserInitialize

      void onGeyserInitialize()
      Called when the GeyserBootstrap is initialized. This will only be called once, when Geyser is loading. Calling this must happen before onGeyserEnable(), since this "sets up" Geyser.
    • onGeyserEnable

      void onGeyserEnable()
      Called when the GeyserBootstrap is enabled/reloaded. This starts Geyser, after which, Geyser is in a player-accepting state.
    • onGeyserDisable

      void onGeyserDisable()
      Called when the GeyserBootstrap is disabled - either before a reload, of before fully shutting down.
    • onGeyserShutdown

      void onGeyserShutdown()
      Called when the GeyserBootstrap is shutting down.
    • platformType

      @NonNull org.geysermc.geyser.api.util.PlatformType platformType()
      Returns the platform type this Geyser instance is running on.
      Returns:
      the PlatformType this Geyser instance is running on.
    • config

      GeyserConfig config()
      Returns the current GeyserConfig
      Returns:
      The current GeyserConfig
    • getGeyserLogger

      GeyserLogger getGeyserLogger()
      Returns the current GeyserLogger
      Returns:
      The current GeyserLogger
    • getCommandRegistry

      CommandRegistry getCommandRegistry()
      Returns the current CommandRegistry
      Returns:
      The current CommandRegistry
    • getGeyserPingPassthrough

      @Nullable IGeyserPingPassthrough getGeyserPingPassthrough()
      Returns the current PingPassthrough manager
      Returns:
      The current PingPassthrough manager
    • getWorldManager

      default WorldManager getWorldManager()
      Returns the current WorldManager
      Returns:
      the current WorldManager
    • getConfigFolder

      Path getConfigFolder()
      Return the data folder where files get stored
      Returns:
      Path location of data folder
    • getSavedUserLoginsFolder

      default Path getSavedUserLoginsFolder()
      Returns:
      the folder where user tokens are saved. This should always point to the location of the config.
    • getDumpInfo

      BootstrapDumpInfo getDumpInfo()
      Information used for the bootstrap section of the debug dump
      Returns:
      The info about the bootstrap
    • getMinecraftServerVersion

      default @Nullable String getMinecraftServerVersion()
      Returns the Minecraft version currently being used on the server. This should be only be implemented on platforms that have direct server access - platforms such as proxies always have to be on their latest version to support the newest Minecraft version, but older servers can use ViaVersion to enable newer versions to join.
      If used, this should not be null before GeyserImpl initialization.
      Returns:
      the Minecraft version being used on the server, or null if not applicable
    • getSocketAddress

      default @Nullable SocketAddress getSocketAddress()
    • getLogsPath

      default Path getLogsPath()
    • getServerPlatform

      @NonNull String getServerPlatform()
      Returns:
      the name of the server platform Geyser is running on.
    • getResourceOrNull

      default @Nullable InputStream getResourceOrNull(String resource)
      Get an InputStream for the given resource path. Overridden on platforms that have different class loader properties.
      Parameters:
      resource - Resource to get
      Returns:
      InputStream of the given resource, or null if not found
    • getResourceOrThrow

      default @NonNull InputStream getResourceOrThrow(@NonNull String resource)
      Get an InputStream for the given resource path, throws AssertionError if resource is not found.
      Parameters:
      resource - Resource to get
      Returns:
      InputStream of the given resource
    • getServerBindAddress

      @NonNull String getServerBindAddress()
      Returns:
      the bind address being used by the Java server.
    • getServerPort

      int getServerPort()
      Returns:
      the listening port being used by the Java server. -1 if can't be found
    • testFloodgatePluginPresent

      boolean testFloodgatePluginPresent()
      Tests if Floodgate is installed, loads the Floodgate key if so, and returns the result of Floodgate installed.
    • getFloodgateKeyPath

      Path getFloodgateKeyPath()
      TEMPORARY - will be removed after The Merge:tm:.
    • createMetricsPlatform

      default @Nullable MetricsPlatform createMetricsPlatform()
    • loadConfig

      default <T extends GeyserConfig> T loadConfig(Class<T> configClass)