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(); }