This is an automated email from the ASF dual-hosted git repository.
liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git
The following commit(s) were added to refs/heads/master by this push:
new a329f50 [SCB-1952] enhance HighwayTransportContext
a329f50 is described below
commit a329f50ed4aeedc7fee08853e8eb5105e1c0e57b
Author: wujimin <[email protected]>
AuthorDate: Thu May 28 16:56:47 2020 +0800
[SCB-1952] enhance HighwayTransportContext
---
.../transport/highway/HighwayServerInvoke.java | 9 ++-
.../transport/highway/HighwayTransportContext.java | 73 +++++++++++++++++++++-
2 files changed, 80 insertions(+), 2 deletions(-)
diff --git
a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerInvoke.java
b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerInvoke.java
index 3c4442c..bf5ff12 100644
---
a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerInvoke.java
+++
b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayServerInvoke.java
@@ -173,7 +173,14 @@ public class HighwayServerInvoke {
operationMeta,
null);
operationProtobuf = ProtobufManager.getOrCreateOperation(invocation);
- invocation.setTransportContext(new HighwayTransportContext());
+ HighwayTransportContext transportContext = new HighwayTransportContext()
+ .setConnection(connection)
+ .setMsgId(msgId)
+ .setHeader(header)
+ .setBodyBuffer(bodyBuffer)
+
.setOperationProtobuf(ProtobufManager.getOrCreateOperation(invocation));
+ invocation.setTransportContext(transportContext);
+
invocation.onStart(null, start);
invocation.getInvocationStageTrace().startSchedule();
diff --git
a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayTransportContext.java
b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayTransportContext.java
index d45e786..bf4b699 100644
---
a/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayTransportContext.java
+++
b/transports/transport-highway/src/main/java/org/apache/servicecomb/transport/highway/HighwayTransportContext.java
@@ -16,13 +16,29 @@
*/
package org.apache.servicecomb.transport.highway;
+import org.apache.servicecomb.codec.protobuf.definition.OperationProtobuf;
+import org.apache.servicecomb.foundation.vertx.tcp.TcpConnection;
import org.apache.servicecomb.swagger.invocation.context.VertxTransportContext;
+import org.apache.servicecomb.transport.highway.message.RequestHeader;
import io.vertx.core.Context;
import io.vertx.core.Vertx;
+import io.vertx.core.buffer.Buffer;
public class HighwayTransportContext implements VertxTransportContext {
- protected Context vertxContext;
+ private final Context vertxContext;
+
+ private TcpConnection connection;
+
+ private long msgId;
+
+ private RequestHeader header;
+
+ private Buffer bodyBuffer;
+
+ private OperationProtobuf operationProtobuf;
+
+ private Buffer responseBuffer;
public HighwayTransportContext() {
this.vertxContext = Vertx.currentContext();
@@ -32,4 +48,59 @@ public class HighwayTransportContext implements
VertxTransportContext {
public Context getVertxContext() {
return vertxContext;
}
+
+ public TcpConnection getConnection() {
+ return connection;
+ }
+
+ public HighwayTransportContext setConnection(TcpConnection connection) {
+ this.connection = connection;
+ return this;
+ }
+
+ public long getMsgId() {
+ return msgId;
+ }
+
+ public HighwayTransportContext setMsgId(long msgId) {
+ this.msgId = msgId;
+ return this;
+ }
+
+ public RequestHeader getHeader() {
+ return header;
+ }
+
+ public HighwayTransportContext setHeader(RequestHeader header) {
+ this.header = header;
+ return this;
+ }
+
+ public Buffer getBodyBuffer() {
+ return bodyBuffer;
+ }
+
+ public HighwayTransportContext setBodyBuffer(Buffer bodyBuffer) {
+ this.bodyBuffer = bodyBuffer;
+ return this;
+ }
+
+ public OperationProtobuf getOperationProtobuf() {
+ return operationProtobuf;
+ }
+
+ public HighwayTransportContext setOperationProtobuf(
+ OperationProtobuf operationProtobuf) {
+ this.operationProtobuf = operationProtobuf;
+ return this;
+ }
+
+ public Buffer getResponseBuffer() {
+ return responseBuffer;
+ }
+
+ public HighwayTransportContext setResponseBuffer(Buffer responseBuffer) {
+ this.responseBuffer = responseBuffer;
+ return this;
+ }
}