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

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

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

revision 1685 by torben, Fri Jan 27 14:12:37 2012 UTC revision 1950 by torben, Sat Mar 23 10:14:42 2013 UTC
# Line 1  Line 1 
1  package dk.thoerup.bukkit.hoeruputils;  package dk.thoerup.bukkit.hoeruputils;
2    
3    
4  import org.bukkit.event.Event;  import java.net.InetSocketAddress;
5    import java.util.ArrayList;
6    import java.util.List;
7    import java.util.logging.Level;
8    
9  import org.bukkit.plugin.PluginManager;  import org.bukkit.plugin.PluginManager;
10  import org.bukkit.plugin.java.JavaPlugin;  import org.bukkit.plugin.java.JavaPlugin;
11    
12    import com.sun.net.httpserver.HttpServer;
13    
14    import dk.thoerup.bukkit.hoeruputils.chests.AdvancedChest;
15    import dk.thoerup.bukkit.hoeruputils.chests.ChestBean;
16    import dk.thoerup.bukkit.hoeruputils.creative.GeneralContractorCommands;
17    import dk.thoerup.bukkit.hoeruputils.message.MessageBean;
18    import dk.thoerup.bukkit.hoeruputils.message.MessageWrapper;
19  import dk.thoerup.bukkit.hoeruputils.secretdoor.DoorBlockListener;  import dk.thoerup.bukkit.hoeruputils.secretdoor.DoorBlockListener;
20  import dk.thoerup.bukkit.hoeruputils.web.MessageListener;  import dk.thoerup.bukkit.hoeruputils.web.BanListener;
21  import dk.thoerup.bukkit.hoeruputils.web.StatusListener;  import dk.thoerup.bukkit.hoeruputils.web.StatusListener;
22    import dk.thoerup.bukkit.hoeruputils.web.WebUser;
23    import dk.thoerup.bukkit.hoeruputils.web.WebUserCommand;
 import de.codeinfection.quickwango.ApiBukkit.ApiBukkit;  
24    
25  public class HoerupUtilsPlugin extends JavaPlugin {  public class HoerupUtilsPlugin extends JavaPlugin {
26    
27          @Override          @Override
28          public void onDisable() {          public void onDisable() {
29                  // TODO Auto-generated method stub                  if ( server != null ) {
30                            server.stop( 0 );
31                    }
32          }          }
33            
34            MessageWrapper messageWrapper;
35            HttpServer server = null;
36    
37                    
38          @Override          @Override
# Line 28  public class HoerupUtilsPlugin extends J Line 42  public class HoerupUtilsPlugin extends J
42                  //getCommand("mapgen").setExecutor(new MapgenCommand(this));                  //getCommand("mapgen").setExecutor(new MapgenCommand(this));
43                  getCommand("eternalday").setExecutor(new EternalDayCommand(this));                  getCommand("eternalday").setExecutor(new EternalDayCommand(this));
44                  getCommand("getpos").setExecutor( new GetposCommand() );                  getCommand("getpos").setExecutor( new GetposCommand() );
45                  getCommand("msg").setExecutor( new MsgCommand( getServer() ) );                  getCommand("msg").setExecutor( new MsgCommand( this ) );
46                  getCommand("tp").setExecutor( new TeleportCommand() );                  getCommand("tp").setExecutor( new TeleportCommand() );
47    
48                  getCommand("wall").setExecutor( new WallCommand() );                  getCommand("wall").setExecutor( new WallCommand() );
# Line 40  public class HoerupUtilsPlugin extends J Line 54  public class HoerupUtilsPlugin extends J
54                  HomeCommand home = new HomeCommand(this);                  HomeCommand home = new HomeCommand(this);
55                  getCommand("home").setExecutor( home );                  getCommand("home").setExecutor( home );
56                  getCommand("sethome").setExecutor( home );                  getCommand("sethome").setExecutor( home );
57                    getCommand("ophome").setExecutor( home );
58    
59                  DiverCommand diver = new DiverCommand(this );                  DiverCommand diver = new DiverCommand(this );
60                  getCommand("diver").setExecutor( diver );                  getCommand("diver").setExecutor( diver );
61    
62                    getCommand("opkill").setExecutor( new OpkillCommand() );
63                    
64                    GeneralContractorCommands generalContractor = new GeneralContractorCommands();
65                    getCommand("replay").setExecutor( generalContractor );
66                    getCommand("levelarea").setExecutor( generalContractor );
67                    getCommand("fillarea").setExecutor( generalContractor );
68                    getCommand("slopearea").setExecutor( generalContractor );
69                    getCommand("setsurface").setExecutor( generalContractor );
70                    getCommand("platform").setExecutor( generalContractor );
71                    getCommand("cylinder").setExecutor( generalContractor );
72                    getCommand("createcave").setExecutor( generalContractor );
73                    getCommand("spawn").setExecutor( new SpawnCommand() );
74                    
75                    getCommand("template").setExecutor( new TemplateCommand(this) );
76    
77                  LogintimeHandler logintimeHandler = new LogintimeHandler( this.getDataFolder() );                  LogintimeHandler logintimeHandler = new LogintimeHandler( this.getDataFolder() );
78                                    
# Line 51  public class HoerupUtilsPlugin extends J Line 80  public class HoerupUtilsPlugin extends J
80                  PluginManager pm = getServer().getPluginManager();                  PluginManager pm = getServer().getPluginManager();
81    
82    
83                    MotdHandler motd = new MotdHandler(this);
84                    getCommand("motd").setExecutor( motd );
85                    pm.registerEvents( motd, this);
86                    
87                    WayPoint wp = new WayPoint(this);
88                    getCommand("waypoint").setExecutor( wp );
89                    getCommand("setwaypoint").setExecutor( wp );
90                    pm.registerEvents( wp, this);
91    
92    
93                  pm.registerEvents(logintimeHandler, this);                  pm.registerEvents(logintimeHandler, this);
94                  pm.registerEvents(logintimeHandler, this);                  pm.registerEvents(logintimeHandler, this);
95    
96                                    
97                  pm.registerEvents(diver, this);                  pm.registerEvents(diver, this);
98    
99                    pm.registerEvents(new EndermanStopper(), this);
100    
101                  pm.registerEvents(new EndermanStopper(), this);                          Jail jail = new Jail(this);
102                    pm.registerEvents(jail, this);
103                    getCommand("jail").setExecutor( jail );
104                    
105                    StickyChunk chunks = new StickyChunk();
106                    pm.registerEvents(chunks, this);
107                    getCommand("stickychunk").setExecutor(chunks);          
108                    
109                    
110                    
111                    Runnable ddlInstaller = new Runnable() {
112                            @Override
113                            public void run() {
114                                    System.out.println("installddl");
115                                    installDDL();
116                            }
117                    };
118                    messageWrapper = new MessageWrapper(this, ddlInstaller);
119                    pm.registerEvents( messageWrapper, this);
120                            
121                    AdvancedChest locked = new AdvancedChest(this, ddlInstaller);
122                    getCommand("chest").setExecutor(locked);
123                    pm.registerEvents( locked, this);
124                    
125                    
126                    getCommand("webuser").setExecutor( new WebUserCommand(this,ddlInstaller) );                            
127    
128                    
129                  //register web plugins                  //register web plugins
130                  //pm.registerEvent(Event.Type.CUSTOM_EVENT, new StatusListener(getServer(), logintimeHandler.getConfig(), home.getConfig() ), Priority.Normal, this);                  //pm.registerEvent(Event.Type.CUSTOM_EVENT, new StatusListener(getServer(), logintimeHandler.getConfig(), home.getConfig() ), Priority.Normal, this);
131                  //pm.registerEvent(Event.Type.CUSTOM_EVENT, new MessageListener(getServer()), Priority.Normal, this);                  //pm.registerEvent(Event.Type.CUSTOM_EVENT, new MessageListener(getServer()), Priority.Normal, this);
132    
133                  ApiBukkit api = (ApiBukkit) pm.getPlugin("ApiBukkit") ;                  /*try {
134                  if ( api != null) {                          try {
135                          StatusListener status = new StatusListener(this, getServer(), logintimeHandler.getConfig(), home.getConfig() );                                  //først probes om klassen i det hele taget findes
136                          api.setRequestController("webstatus", status );                                  Class.forName("de.codeinfection.quickwango.ApiBukkit.ApiServer.ApiController"); //if it fails it throws an exception
137                  } else {                                  WebLoader.getInstance().load(this, logintimeHandler.getConfig(), home.getConfig());
138                          System.out.println("Could not find ApiBukkit");                          
139                                    getLogger().info("ApiBukkit found, status listener registered");
140                                    
141                            } catch (ClassNotFoundException e) {
142                                    getLogger().warning("Could not find ApiBukkit - web status is disabled" );
143                            }                      
144                    } catch (Throwable e) { //instead of ClassNotFoundException + NoSuchMethodException + InvocationTargetException + IllegalAccessException
145                            getLogger().warning("Could not find ApiBukkit - web status is disabled (" + e.getClass().getName() + ":" + e.getMessage() + ")"  );
146                    }*/
147                    
148                    try  {
149                            InetSocketAddress adr = new InetSocketAddress("127.0.0.1", 9999);
150                            server = HttpServer.create(adr, 20);
151                            server.createContext("/bans", new BanListener(this, getServer()) );
152                            server.createContext("/webstatus", new StatusListener(this, getServer(),logintimeHandler.getConfig(), home.getConfig()) );
153                            server.start();
154                            
155                    } catch(Exception e) {
156                            getLogger().log(Level.SEVERE, "Error loading webserver", e);
157                            
158                  }                  }
159                                    
160                                    
# Line 78  public class HoerupUtilsPlugin extends J Line 162  public class HoerupUtilsPlugin extends J
162                                    
163                  DoorBlockListener secretDoor = new DoorBlockListener(this);                  DoorBlockListener secretDoor = new DoorBlockListener(this);
164                  pm.registerEvents(secretDoor, this);                  pm.registerEvents(secretDoor, this);
165                  pm.registerEvents(secretDoor.getPlayerListener(), this);                  pm.registerEvents(secretDoor.getPlayerListener(), this);                
166                            }
167            
168            
169            
170            
171            
172            public MessageWrapper getMessageWrapper() {
173                    return messageWrapper;
174            }
175    
176            //@SuppressWarnings({ "unchecked", "rawtypes" })
177            @Override
178            public List<Class<?>> getDatabaseClasses() {
179                    List<Class<?>> list = new ArrayList<Class<?>>();
180    
181                    list.add(MessageBean.class);
182                    list.add(ChestBean.class);
183                    list.add(WebUser.class);
184    
185                    return list;
186          }          }
187    
188          private void deprecated() {          private void deprecated() {

Legend:
Removed from v.1685  
changed lines
  Added in v.1950

  ViewVC Help
Powered by ViewVC 1.1.20