]> jfr.im git - irc/rizon/moo.git/commitdiff
osflood
authorAdam <redacted>
Sun, 21 Feb 2016 15:43:19 +0000 (10:43 -0500)
committerAdam <redacted>
Sun, 21 Feb 2016 15:43:19 +0000 (10:43 -0500)
mxbl/src/main/java/net/rizon/moo/plugin/mxbl/mxbl.java
osflood/src/main/java/net/rizon/moo/plugin/osflood/osflood.java
pom.xml

index b9db04cd417dd96a1bb987bc0d95cebf4ded65cc..dbadb47ca56d55099725a2c7e85c257b124f9abd 100644 (file)
@@ -109,7 +109,6 @@ public class mxbl extends Plugin
        {
                bind(mxbl.class).toInstance(this);
 
-
                Multibinder<EventListener> eventListenerBinder = Multibinder.newSetBinder(binder(), EventListener.class);
                eventListenerBinder.addBinding().to(EventRegister.class);
 
index 8387f585ea7261ade8720fc96ea66834191f6acd..2dd0816cae64a4b68eefdf19ae72b9f324333ace 100644 (file)
@@ -1,24 +1,38 @@
 package net.rizon.moo.plugin.osflood;
 
 import com.google.common.eventbus.Subscribe;
+import com.google.inject.Inject;
+import com.google.inject.multibindings.Multibinder;
+import java.util.Arrays;
 import java.util.Date;
+import java.util.EventListener;
 import java.util.HashMap;
 import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-import net.rizon.moo.Moo;
+import net.rizon.moo.Command;
 import net.rizon.moo.Plugin;
+import net.rizon.moo.conf.Config;
 import net.rizon.moo.events.EventWallops;
 import net.rizon.moo.events.OnReload;
+import net.rizon.moo.irc.Protocol;
 import net.rizon.moo.plugin.osflood.conf.OsfloodConfiguration;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
-public class osflood extends Plugin
+public class osflood extends Plugin implements EventListener
 {
-       private static final Logger logger = LoggerFactory.getLogger(osflood.class);
-       private final Pattern badOSPattern = Pattern.compile("Denied access to OperServ from [^@]+@([^ ]+) .*$");
+       private static final Pattern badOSPattern = Pattern.compile("Denied access to OperServ from [^@]+@([^ ]+) .*$");
+
+       @Inject
+       private static Logger logger;
+
+       @Inject
+       private Protocol protocol;
+
+       @Inject
+       private Config config;
 
        private OsfloodConfiguration conf;
 
@@ -34,13 +48,11 @@ public class osflood extends Plugin
        @Override
        public void start() throws Exception
        {
-               Moo.getEventBus().register(this);
        }
 
        @Override
        public void stop()
        {
-               Moo.getEventBus().unregister(this);
        }
 
        private boolean isExpired(OperServFlood fu)
@@ -90,11 +102,11 @@ public class osflood extends Plugin
 
                        if (fu.frequency >= conf.num)
                        {
-                               Moo.akill(host, "+3d", "Services abuse");
+                               protocol.akill(host, "+3d", "Services abuse");
                                osFlooders.remove(host);
 
-                               for (String s : Moo.conf.flood_channels)
-                                       Moo.privmsg(s, "[FLOOD] Akilled *@" + host + " for flooding OperServ.");
+                               for (String s : config.flood_channels)
+                                       protocol.privmsg(s, "[FLOOD] Akilled *@" + host + " for flooding OperServ.");
                        }
                }
        }
@@ -113,4 +125,21 @@ public class osflood extends Plugin
                        logger.warn("Unable to reload configuration", ex);
                }
        }
+
+       @Override
+       public List<Command> getCommands()
+       {
+               return Arrays.asList();
+       }
+
+       @Override
+       protected void configure()
+       {
+               bind(osflood.class).toInstance(this);
+
+               bind(OsfloodConfiguration.class).toInstance(conf);
+
+               Multibinder<EventListener> eventListenerBinder = Multibinder.newSetBinder(binder(), EventListener.class);
+               eventListenerBinder.addBinding().toInstance(this);
+       }
 }
diff --git a/pom.xml b/pom.xml
index 08cb5a1509eea035957b839bff9a332a1c356d73..fdbd1ef66c32230d8ef4b76461c7a19707327310 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -33,8 +33,8 @@
                <module>fun</module>
                <module>grapher</module>
                <module>logging</module>
-               <module>mxbl</module><!--
-               <module>osflood</module>
+               <module>mxbl</module>
+               <module>osflood</module><!--
                <module>proxyscan</module>
                <module>random</module>
                <module>servercontrol</module>