TF-EssentialsX/Essentials/src/com/earth2me/essentials/commands/Commandgc.java

64 lines
1.6 KiB
Java
Raw Normal View History

package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
2012-09-15 21:04:18 +00:00
import com.earth2me.essentials.Util;
import java.lang.management.ManagementFactory;
import org.bukkit.ChatColor;
import org.bukkit.Server;
import org.bukkit.World;
import org.bukkit.command.CommandSender;
public class Commandgc extends EssentialsCommand
{
public Commandgc()
{
super("gc");
}
@Override
2011-11-18 12:06:59 +00:00
protected void run(final Server server, final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
float tps = ess.getTimer().getAverageTPS();
ChatColor color;
if (tps >= 18)
{
color = ChatColor.GREEN;
}
else if (tps >= 15)
{
color = ChatColor.YELLOW;
}
else
{
color = ChatColor.RED;
}
2012-09-15 21:04:18 +00:00
sender.sendMessage(_("uptime", Util.formatDateDiff(ManagementFactory.getRuntimeMXBean().getStartTime())));
sender.sendMessage(_("tps", "" + color + tps));
sender.sendMessage(_("gcmax", (Runtime.getRuntime().maxMemory() / 1024 / 1024)));
sender.sendMessage(_("gctotal", (Runtime.getRuntime().totalMemory() / 1024 / 1024)));
2012-09-15 21:04:18 +00:00
sender.sendMessage(_("gcfree", (Runtime.getRuntime().freeMemory() / 1024 / 1024)));
for (World w : server.getWorlds())
{
String worldType = "World";
switch (w.getEnvironment())
{
case NETHER:
worldType = "Nether";
break;
case THE_END:
worldType = "The End";
break;
}
sender.sendMessage(
2012-09-09 15:15:12 +00:00
"\u00a76" + worldType + " \"" + w.getName() + "\": "
+ w.getLoadedChunks().length + _("gcchunks")
+ w.getEntities().size() + _("gcentities"));
}
2012-09-15 21:04:18 +00:00
}
}