package com.alecgorge.minecraft.jsonapi.streams;
import org.bukkit.plugin.Plugin;
import org.json.simpleForBukkit.JSONObject;
import com.alecgorge.minecraft.jsonapi.JSONAPI;
import com.alecgorge.minecraft.jsonapi.dynamic.APIWrapperMethods;
public class PerformanceStreamDataProvider implements Runnable {
public static void enqueue(Plugin plugin) {
plugin.getServer().getScheduler().scheduleSyncRepeatingTask(plugin, new PerformanceStreamDataProvider(), 100, 100);
}
@Override
public void run() {
JSONObject t = JSONAPI.instance.getTickRateCounter().getJSONObject();
double diskMax = APIWrapperMethods.getInstance().getDiskSize();
double diskUsage = APIWrapperMethods.getInstance().getDiskUsage();
double memoryMax = APIWrapperMethods.getInstance().getJavaMaxMemory();
double memoryUsage = APIWrapperMethods.getInstance().getJavaMemoryUsage();
int players = JSONAPI.instance.getServer().getOnlinePlayers().size();
JSONAPI.instance.getJSONServer().performance.addMessage(new PerformanceMessage(t, diskMax, diskUsage, memoryMax, memoryUsage, players));
}
}