From 30f131bc5defcdc13144eb2ad38f6ec9f4e8f798 Mon Sep 17 00:00:00 2001 From: Arnaud Simon Date: Wed, 28 Nov 2007 15:38:17 +0000 Subject: added enable_replay option git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@599030 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/org/apache/qpidity/transport/Session.java | 24 ++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'java/common') diff --git a/java/common/src/main/java/org/apache/qpidity/transport/Session.java b/java/common/src/main/java/org/apache/qpidity/transport/Session.java index 8c1b2a9ad4..bf16a6c0d8 100644 --- a/java/common/src/main/java/org/apache/qpidity/transport/Session.java +++ b/java/common/src/main/java/org/apache/qpidity/transport/Session.java @@ -41,7 +41,19 @@ import java.util.concurrent.atomic.AtomicBoolean; public class Session extends Invoker { - + static + { + String enableReplay = "enable_replay"; + try + { + ENABLE_REPLAY = new Boolean(System.getProperties().getProperty(enableReplay, "false")); + } + catch (Exception e) + { + ENABLE_REPLAY = false; + } + } + private static boolean ENABLE_REPLAY = false; private static final Logger log = Logger.get(Session.class); // channel may be null @@ -178,17 +190,18 @@ public class Session extends Invoker void complete(long lower, long upper) { log.debug("%s complete(%d, %d)", this, lower, upper); - + if( ENABLE_REPLAY ) + { synchronized (commands) { for (long id = lower; id <= upper; id++) { commands.remove(id); } - commands.notifyAll(); log.debug("%s commands remaining: %s", this, commands); } + } } void complete(long mark) @@ -207,7 +220,10 @@ public class Session extends Invoker { synchronized (commands) { - commands.put(commandsOut++, m); + if(ENABLE_REPLAY) + { + commands.put(commandsOut++, m); + } channel.method(m); } } -- cgit v1.2.1