diff options
Diffstat (limited to 'bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java')
-rw-r--r-- | bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java b/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java index bde7478..aab6001 100644 --- a/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java +++ b/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java @@ -1,5 +1,10 @@ -/* - * Copyright 2009 CrossWire Bible Society (http://www.crosswire.org) +/****************************************************************************** + * + * SwordOrb.java - + * + * $Id: SwordOrb.java 2833 2013-06-29 06:40:28Z chrislit $ + * + * Copyright 2003-2013 CrossWire Bible Society (http://www.crosswire.org) * CrossWire Bible Society * P. O. Box 2528 * Tempe, AZ 85280-2528 @@ -35,9 +40,9 @@ import java.util.Properties; public class SwordOrb extends Object implements HttpSessionBindingListener { public static Properties config = null; public static String ORBEXE = "swordorbserver"; - public static final int MAX_REMOTE_ADDR_CONNECTIONS = 20; - public static final int MAX_ACCESS_COUNT_PER_INTERVAL = 10; - public static final long MAX_ACCESS_COUNT_INTERVAL = 10 * 1000; // milliseconds + public static final int MAX_REMOTE_ADDR_CONNECTIONS = 10; + public static final int MAX_ACCESS_COUNT_PER_INTERVAL = 50; + public static final long MAX_ACCESS_COUNT_INTERVAL = 50 * 1000; // milliseconds public static final long BLACKLIST_DURATION = 10 * 60 * 1000; // milliseconds public static final String BIBLES = "Biblical Texts"; public static final String COMMENTARIES = "Commentaries"; @@ -53,7 +58,7 @@ public class SwordOrb extends Object implements HttpSessionBindingListener { public static final int NONE = 0; // set this to your desired debug output level - public static int debugLevel = INFO; + public static int debugLevel = WARN; static void log(int level, String message, Throwable e) { @@ -256,7 +261,11 @@ log(INFO, "No ORB found in session; constructing a new instance", null); session.setAttribute("SwordOrb", orb); } - else throw new Exception("Max Remote Addr Connections from: ["+remoteAddr+"]"); + else { + // recycle oldest orb + orb = orbs.remove(0); + orbs.add(orb); + } } else { log(INFO, "ORB found in session", null); |