From 14a48792bdbdefd37073a2b88538fa0499bb555c Mon Sep 17 00:00:00 2001 From: David McKnight Date: Mon, 10 Mar 2008 19:40:06 +0000 Subject: [PATCH] [220123][dstore] Configurable timeout on irresponsiveness --- .../org/eclipse/dstore/internal/core/util/XMLparser.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/XMLparser.java b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/XMLparser.java index a6854bbeb6e..02af8b6b940 100644 --- a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/XMLparser.java +++ b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/XMLparser.java @@ -341,7 +341,14 @@ public class XMLparser if (_isKeepAliveEnabled && _isKeepAliveCompatible) { - socket.setSoTimeout(IO_SOCKET_READ_TIMEOUT); + if (_kart == null || !_kart.isAlive()){ // normal read wait + socket.setSoTimeout(IO_SOCKET_READ_TIMEOUT); + } + else { // read wait time when awaking a keepalive response + // otherwise, if IO_SOCKET_READ_TIMEOUT is bigger we don't get out of here until IO_SOCKET_READ_TIMEOUT is complete + socket.setSoTimeout((int)KEEPALIVE_RESPONSE_TIMEOUT); + } + try { in = reader.read();