--- miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/HoerupUtilsPlugin.java 2012/03/21 17:04:29 1760 +++ miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/HoerupUtilsPlugin.java 2012/04/03 20:21:02 1768 @@ -1,14 +1,17 @@ package dk.thoerup.bukkit.hoeruputils; -import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.List; -import org.bukkit.configuration.Configuration; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.java.JavaPlugin; import dk.thoerup.bukkit.hoeruputils.creative.GeneralContractorCommands; +import dk.thoerup.bukkit.hoeruputils.message.MessageBean; +import dk.thoerup.bukkit.hoeruputils.message.MessageWrapper; import dk.thoerup.bukkit.hoeruputils.secretdoor.DoorBlockListener; +import dk.thoerup.bukkit.hoeruputils.web.WebLoader; public class HoerupUtilsPlugin extends JavaPlugin { @@ -16,6 +19,8 @@ public void onDisable() { // TODO Auto-generated method stub } + + MessageWrapper messageWrapper; @Override @@ -25,7 +30,7 @@ //getCommand("mapgen").setExecutor(new MapgenCommand(this)); getCommand("eternalday").setExecutor(new EternalDayCommand(this)); getCommand("getpos").setExecutor( new GetposCommand() ); - getCommand("msg").setExecutor( new MsgCommand( getServer() ) ); + getCommand("msg").setExecutor( new MsgCommand( this ) ); getCommand("tp").setExecutor( new TeleportCommand() ); getCommand("wall").setExecutor( new WallCommand() ); @@ -66,9 +71,25 @@ pm.registerEvents(diver, this); - - pm.registerEvents(new EndermanStopper(), this); + pm.registerEvents(new EndermanStopper(), this); + + + + SnitchingChest snitch = new SnitchingChest(this); + getCommand("snitchingchest").setExecutor(snitch); + pm.registerEvents( snitch, this); + + + Runnable ddlInstaller = new Runnable() { + @Override + public void run() { + System.out.println("installddl"); + installDDL(); + } + }; + messageWrapper = new MessageWrapper(this, ddlInstaller); + pm.registerEvents( messageWrapper, this); //register web plugins //pm.registerEvent(Event.Type.CUSTOM_EVENT, new StatusListener(getServer(), logintimeHandler.getConfig(), home.getConfig() ), Priority.Normal, this); @@ -77,19 +98,14 @@ try { try { //først probes om klassen i det hele taget findes - Class.forName("de.codeinfection.quickwango.ApiBukkit.ApiServer.ApiController"); - - Classwebloader = Class.forName("dk.thoerup.bukkit.hoeruputils.web.WebLoader"); - Method load = webloader.getMethod("load", HoerupUtilsPlugin.class, Configuration.class, Configuration.class); - Object args[] = {this, logintimeHandler.getConfig(), home.getConfig() }; - load.invoke(null, args); - + Class.forName("de.codeinfection.quickwango.ApiBukkit.ApiServer.ApiController"); //if it fails it throws an exception + WebLoader.getInstance().load(this, logintimeHandler.getConfig(), home.getConfig()); + getLogger().warning("ApiBukkit found, status listener registered"); } catch (ClassNotFoundException e) { getLogger().warning("Could not find ApiBukkit - web status is disabled" ); - } - + } } catch (Throwable e) { //instead of ClassNotFoundException + NoSuchMethodException + InvocationTargetException + IllegalAccessException getLogger().warning("Could not find ApiBukkit - web status is disabled (" + e.getClass().getName() + ":" + e.getMessage() + ")" ); } @@ -102,6 +118,21 @@ pm.registerEvents(secretDoor.getPlayerListener(), this); } + + public MessageWrapper getMessageWrapper() { + return messageWrapper; + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + public List> getDatabaseClasses() { + System.out.println("getDatabaseClasses"); + List list = new ArrayList(); + + list.add(MessageBean.class); + + return list; + } private void deprecated() { /*