/[projects]/miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/web/StatusListener.java
ViewVC logotype

Diff of /miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/web/StatusListener.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1241 by torben, Wed Mar 23 17:38:26 2011 UTC revision 1664 by torben, Wed Dec 21 09:43:48 2011 UTC
# Line 1  Line 1 
1  package dk.thoerup.bukkit.hoeruputils.web;  package dk.thoerup.bukkit.hoeruputils.web;
2    
3    import java.io.File;
4    import java.text.SimpleDateFormat;
5    import java.util.Date;
6    import java.util.Set;
7    import java.util.Map;
8  import org.bukkit.Server;  import org.bukkit.Server;
9    import org.bukkit.OfflinePlayer;
10  import org.bukkit.entity.Player;  import org.bukkit.entity.Player;
11  import org.bukkit.plugin.Plugin;  import org.bukkit.plugin.Plugin;
12    
13    import org.bukkit.configuration.file.YamlConfiguration;
14    
15  import org.kokakiwi.apicraft.events.ApiEvent;  import org.kokakiwi.apicraft.events.ApiEvent;
16  import org.kokakiwi.apicraft.events.ApiListener;  import org.kokakiwi.apicraft.events.ApiListener;
17    
18  public class StatusListener extends ApiListener {  public class StatusListener extends ApiListener {
19    
20            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
21    
22          Server server;          Server server;
23          public StatusListener(Server server) {          public StatusListener(Server server) {
24                  this.server = server;                            this.server = server;          
25          }          }
26    
27            String formatTime(String input) {
28                    return formatTime( Long.parseLong(input) );
29            }
30            String formatTime(long input) {
31                    Date d = new Date( input );
32                    return format.format(d );
33            }
34                    
35          @Override          @Override
36          public void onApiEvent(ApiEvent event) {          public void onApiEvent(ApiEvent event) {
# Line 19  public class StatusListener extends ApiL Line 38  public class StatusListener extends ApiL
38                          StringBuilder sb = new StringBuilder();                          StringBuilder sb = new StringBuilder();
39                                                    
40                          //out.writeBytes("Server:  " + server.getServerName() + "\n");                          //out.writeBytes("Server:  " + server.getServerName() + "\n");
41                          sb.append("Version: " + server.getVersion() + "\n\n");                          sb.append("Version: " + server.getVersion() + "\n");
42    
43                            long mb = 1024*1024;
44                            Runtime rt = Runtime.getRuntime();
45                            sb.append("VM Memory, free: " +  rt.freeMemory()/mb + ", total:" + rt.totalMemory()/mb + ", max:" +  rt.maxMemory()/mb  + "\n\n");
46                                                    
47                          sb.append("--- Online players ---\n");                          sb.append("--- Online players ---\n");
48                          for (Player p : server.getOnlinePlayers()) {                                                      for (Player p : server.getOnlinePlayers()) {
49                                  sb.append( p.getName() + "\n");  
50                                    sb.append( p.getName() );
51                          }                          }
52                            sb.append("\n");
53    
54                            sb.append("--- Last seen players/offline ---\n");
55    /*
56                            File configFile = new File("./plugins/LastSeen/times.yml");
57                            if (configFile.exists() ) {
58    
59                                    YamlConfiguration config = new YamlConfiguration();
60                                    try {
61                                            config.load(configFile);
62                                    } catch (Exception e) {
63                                            event.setResponse(e.toString() );
64                                            event.setActionTaken(true);
65                                            return;                        
66                                    }
67    
68                                    Set<String> keys = config.getKeys(false);
69                                    if (keys != null) {
70                                            for (String key : keys) {
71                                                    if (server.getPlayer(key) != null) // player is online
72                                                            continue;
73    
74                                                    String last = config.getString( key + ".logout");      
75                                                    sb.append("" + key + ": " + formatTime(last) + "\n") ;
76                                            }
77                                    } else {
78                                            sb.append("no players found\n");
79                                    }
80                            } else {
81                                    sb.append("could not find LastSeen/times.yml\n");
82                            }
83                            sb.append("\n");*/
84                            OfflinePlayer playerList[] = server.getOfflinePlayers();
85                            for (OfflinePlayer player : playerList) {
86                                    //long first = p.getFirstPlayed();
87    
88                                    long last = player.getLastPlayed();    
89                                    sb.append(player.getName() + ": " + formatTime(last) + "\n");
90                            }
91    
92                                                    
93                          sb.append("--- Plugins ---\n");                          sb.append("--- Plugins ---\n");
94                          for (Plugin plugin : server.getPluginManager().getPlugins()) {                          for (Plugin plugin : server.getPluginManager().getPlugins()) {

Legend:
Removed from v.1241  
changed lines
  Added in v.1664

  ViewVC Help
Powered by ViewVC 1.1.20