ServuxSpigot/Deprecated/dataproviders/IDataProvider.kt

78 lines
2.0 KiB
Kotlin

package cc.maxmc.servux.dataproviders
interface IDataProvider {
/**
* Returns the simple name for this data provider.
* This should preferably be a lower case alphanumeric string with no
* other special characters than '-' and '_'.
* This name will be used in the enable/disable commands as the argument
* and also as the config file key/identifier.
*
* @return
*/
val name: String
/**
* Returns the description of this data provider.
* Used in the command to list the available providers and to check the status
* of a given provider.
*
* @return
*/
val description: String
/**
* Returns the network channel name used by this data provider to listen
* for incoming data requests and to respond and send the requested data.
*
* @return
*/
val networkChannel: String
/**
* Returns the current protocol version this provider supports
*
* @return
*/
val protocolVersion: Int
/**
* Returns true if this data provider is currently enabled.
*
* @return
*/
/**
* Enables or disables this data provider
*
* @param enabled
*/
var isEnabled: Boolean
/**
* Returns whether or not this data provider should get ticked to periodically send some data,
* or if it's only listening for incoming requests and responds to them directly.
*
* @return
*/
fun shouldTick(): Boolean {
return false
}
/**
* Returns the interval in game ticks that this data provider should be ticked at
*
* @return
*/
val tickRate: Int
/**
* Called at the given tick rate
*
* @param tickCounter The current server tick (since last server start)
*/
fun tick(tickCounter: Int) {}
/**
* Returns the network packet handler used for this data provider.
* @return
*/
// IPluginChannelHandler getPacketHandler();
}