You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by ru...@apache.org on 2010/04/04 19:12:00 UTC
svn commit: r930718 - in
/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp:
HttpCoreNIOSender.java debug/AbstractConnectionDebug.java
debug/ClientConnectionDebug.java debug/ServerConnectionDebug.java
Author: ruwan
Date: Sun Apr 4 17:11:59 2010
New Revision: 930718
URL: http://svn.apache.org/viewvc?rev=930718&view=rev
Log:
Fixing some issue in the client connection debug
Modified:
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/AbstractConnectionDebug.java
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ClientConnectionDebug.java
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ServerConnectionDebug.java
Modified: synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java?rev=930718&r1=930717&r2=930718&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java (original)
+++ synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/HttpCoreNIOSender.java Sun Apr 4 17:11:59 2010
@@ -477,6 +477,12 @@ public class HttpCoreNIOSender extends A
}
}
+ if (state == BaseConstants.PAUSED) {
+ HttpRequest req = (HttpRequest)
+ worker.getConn().getContext().getAttribute("http.request");
+ req.setHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_CLOSE);
+ }
+
// pass ClientConnectionDebug to the Server side
ServerConnectionDebug scd = (ServerConnectionDebug)
worker.getConn().getContext().getAttribute(ServerHandler.SERVER_CONNECTION_DEBUG);
Modified: synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/AbstractConnectionDebug.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/AbstractConnectionDebug.java?rev=930718&r1=930717&r2=930718&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/AbstractConnectionDebug.java (original)
+++ synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/AbstractConnectionDebug.java Sun Apr 4 17:11:59 2010
@@ -66,12 +66,24 @@ public abstract class AbstractConnection
StringBuffer sb = new StringBuffer();
if (headers != null) {
if (printAllHeaders) {
+ boolean first = true;
for (Header h : headers) {
+ if (first) {
+ first = false;
+ } else {
+ sb.append(fieldSeparator);
+ }
sb.append(h.getName()).append(keyValueSeparator).append(h.getValue());
}
} else if (printHeaderNames != null) {
+ boolean first = true;
for (Header h : headers) {
if (printHeaderNames.contains(h.getName())) {
+ if (first) {
+ first = false;
+ } else {
+ sb.append(fieldSeparator);
+ }
sb.append(h.getName()).append(keyValueSeparator).append(h.getValue());
}
}
Modified: synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ClientConnectionDebug.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ClientConnectionDebug.java?rev=930718&r1=930717&r2=930718&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ClientConnectionDebug.java (original)
+++ synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ClientConnectionDebug.java Sun Apr 4 17:11:59 2010
@@ -63,6 +63,7 @@ public class ClientConnectionDebug exten
RequestLine requestLine = request.getRequestLine();
this.lastRequestProtocol = requestLine.getProtocolVersion().toString();
this.lastRequestHTTPMethod = requestLine.getMethod();
+ this.headers = request.getAllHeaders();
} catch (IOException ignore) {}
}
@@ -96,14 +97,18 @@ public class ClientConnectionDebug exten
this.responseLine = responseLine;
}
- public void recordResponseInfo(Header[] headers) {
- this.headers = headers;
+ public long getLastRequestStartTime() {
+ return lastRequestStartTime;
+ }
+
+ public long getResponseCompletionTime() {
+ return responseCompletionTime;
}
public String dump() {
StringBuffer sb = new StringBuffer(25);
- sb.append("E2S-Req-Start").append(keyValueSeparator).append(lastRequestStartTime);
+ sb.append("E2S-Req-Start").append(keyValueSeparator).append(format(lastRequestStartTime));
sb.append(fieldSeparator);
sb.append("E2S-Req-End").append(keyValueSeparator).append(format(requestCompletionTime));
sb.append(fieldSeparator);
@@ -124,9 +129,9 @@ public class ClientConnectionDebug exten
sb.append(statementSeparator);
}
- sb.append("S2E-Resp-Start").append(keyValueSeparator).append(responseStartTime);
+ sb.append("S2E-Resp-Start").append(keyValueSeparator).append(format(responseStartTime));
sb.append(fieldSeparator);
- sb.append("S2E-Resp-End").append(keyValueSeparator).append(responseCompletionTime);
+ sb.append("S2E-Resp-End").append(keyValueSeparator).append(format(responseCompletionTime));
sb.append(statementSeparator);
sb.append("S2E-Resp-Status").append(keyValueSeparator).append(responseLine);
Modified: synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ServerConnectionDebug.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ServerConnectionDebug.java?rev=930718&r1=930717&r2=930718&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ServerConnectionDebug.java (original)
+++ synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/debug/ServerConnectionDebug.java Sun Apr 4 17:11:59 2010
@@ -96,6 +96,9 @@ public class ServerConnectionDebug exten
public String dump() {
StringBuffer sb = new StringBuffer(50);
+ responseCompletionTime = responseCompletionTime == 0 ?
+ System.currentTimeMillis() : responseCompletionTime;
+ long totalTime = responseCompletionTime - requestStartTime;
sb.append("C2E-Req-StartTime").append(keyValueSeparator).append(format(requestStartTime));
sb.append(fieldSeparator);
@@ -124,10 +127,18 @@ public class ServerConnectionDebug exten
sb.append("E2C-Resp-Start").append(keyValueSeparator).append(format(responseStartTime));
sb.append(fieldSeparator);
- sb.append("E2C-Resp-End").append(keyValueSeparator).append(format(
- responseCompletionTime == 0 ? System.currentTimeMillis() : responseCompletionTime));
+ sb.append("E2C-Resp-End").append(keyValueSeparator).append(format(responseCompletionTime));
sb.append(statementSeparator);
+ sb.append("Total-Time").append(keyValueSeparator).append(totalTime).append("ms");
+ if (clientConnectionDebug != null) {
+ long svcTime = clientConnectionDebug.getResponseCompletionTime() - clientConnectionDebug.getLastRequestStartTime();
+ sb.append(fieldSeparator);
+ sb.append("Svc-Time").append(keyValueSeparator).append(svcTime).append("ms");
+ sb.append(fieldSeparator);
+ sb.append("ESB-Time").append(keyValueSeparator).append(totalTime - svcTime).append("ms");
+ }
+
return sb.toString();
}