Class TachyonCore
- All Implemented Interfaces:
org.bukkit.command.CommandExecutor, org.bukkit.command.TabCompleter, org.bukkit.command.TabExecutor, org.bukkit.plugin.Plugin, TachyonAPI<org.bukkit.inventory.ItemStack>
- Since:
- 1.0.0-SNAPSHOT
- Version:
- 1.0
- Author:
- Jimmy (vSKAH) - 05/04/2026
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionRetrieves the auditing service used to dispatch player actions and security events to the backend.ComponentRegistry<org.bukkit.inventory.ItemStack> Retrieves the central component registry used to manage Protobuf descriptors and UI preview handlers.EventBus<org.bukkit.plugin.java.JavaPlugin> Retrieves the central asynchronous event bus used to dispatch and handle Tachyon events.static TachyonLoggergetModuleLogger(@NotNull String moduleName) Retrieves the service dedicated to raw player data manipulation and synchronization.Retrieves the service responsible for managing active player sessions across the network.Retrieves the snapshot service used to trigger database backups, point-in-time recoveries, and to query snapshot histories.Retrieves the system service handling core backend connectivity and global states.Retrieves the registry responsible for managing live player profiles.voidvoidonEnable()booleanChecks if the Tachyon core system is currently in its shutdown phase.Methods inherited from class org.bukkit.plugin.java.JavaPlugin
getClassLoader, getCommand, getConfig, getDatabase, getDatabaseClasses, getDataFolder, getDefaultWorldGenerator, getDescription, getFile, getLogger, getPlugin, getPluginLoader, getProvidingPlugin, getResource, getServer, getTextResource, initialize, installDDL, isEnabled, isInitialized, isNaggable, onCommand, onLoad, onTabComplete, reloadConfig, removeDDL, saveConfig, saveDefaultConfig, saveResource, setEnabled, setNaggable, toStringMethods inherited from class org.bukkit.plugin.PluginBase
equals, getName, hashCode
-
Constructor Details
-
TachyonCore
public TachyonCore()
-
-
Method Details
-
onEnable
public void onEnable()- Specified by:
onEnablein interfaceorg.bukkit.plugin.Plugin- Overrides:
onEnablein classorg.bukkit.plugin.java.JavaPlugin
-
onDisable
public void onDisable()- Specified by:
onDisablein interfaceorg.bukkit.plugin.Plugin- Overrides:
onDisablein classorg.bukkit.plugin.java.JavaPlugin
-
getModuleLogger
-
getTachyonProfileRegistry
Description copied from interface:TachyonAPIRetrieves the registry responsible for managing live player profiles.Used to access, load, or manipulate active
TachyonProfileinstances that are currently cached in the server's memory.- Specified by:
getTachyonProfileRegistryin interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
TachyonProfileRegistryinstance.
-
getComponentRegistry
Description copied from interface:TachyonAPIRetrieves the central component registry used to manage Protobuf descriptors and UI preview handlers.This registry is essential for registering new custom data components when your specific plugin or module initializes during server startup.
- Specified by:
getComponentRegistryin interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
ComponentRegistryinstance.
-
getSystemService
Description copied from interface:TachyonAPIRetrieves the system service handling core backend connectivity and global states.This service manages low-level operations such as back-end ping.
- Specified by:
getSystemServicein interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
SystemServiceinstance.
-
getAuditService
Description copied from interface:TachyonAPIRetrieves the auditing service used to dispatch player actions and security events to the backend.- Specified by:
getAuditServicein interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
AuditServiceinstance.
-
getSnapshotService
Description copied from interface:TachyonAPIRetrieves the snapshot service used to trigger database backups, point-in-time recoveries, and to query snapshot histories.- Specified by:
getSnapshotServicein interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
SnapshotServiceinstance.
-
getPlayerSessionService
Description copied from interface:TachyonAPIRetrieves the service responsible for managing active player sessions across the network.This service handles keeping sessions alive by sending periodic heartbeats for loaded profiles, and provides mechanisms to unlock player profiles to prevent stuck sessions or cross-server locks.
- Specified by:
getPlayerSessionServicein interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
PlayerSessionServiceinstance.
-
getPlayerDataService
Description copied from interface:TachyonAPIRetrieves the service dedicated to raw player data manipulation and synchronization.This service is utilized to pull profile data from the backend, asynchronously push profile updates (saves), and aggressively flush pending data queues for specific players.
- Specified by:
getPlayerDataServicein interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
PlayerDataServiceinstance.
-
getEventBus
Description copied from interface:TachyonAPIRetrieves the central asynchronous event bus used to dispatch and handle Tachyon events.This event bus handles safe listener registration and high-performance, lock-free execution offloaded to a dedicated asynchronous thread pool.
- Specified by:
getEventBusin interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
- The active
EventBusinstance.
-
tachyonCoreDisabling
public boolean tachyonCoreDisabling()Description copied from interface:TachyonAPIChecks if the Tachyon core system is currently in its shutdown phase.Best Practice: External plugins should check this boolean before initiating any new asynchronous gRPC calls, component saves, or heavy operations. If this returns
true, it means the server is stopping and new backend requests should be aborted to prevent hanging threads or data corruption.- Specified by:
tachyonCoreDisablingin interfaceTachyonAPI<org.bukkit.inventory.ItemStack>- Returns:
trueif the Tachyon plugin is actively disabling,falseotherwise.
-
getPluginConfig
-