Skip to main content

Start External Server with TCP

Introduction

Switching connection from WebSocket to TCP is simple. Just set connection method to ExternalJoinEnum.TCP.

@UtilityClass
public class MyExternalServer {
...
public ExternalServerBuilder builder(int port, ExternalJoinEnum joinEnum) {
var builder = ExternalMapper.builder(port);
builder.setJoinEnum(joinEnum);

return builder;
}
}

class OneApplication {
static void main() {
var externalServer = MyExternalServer.builder(
ExternalGlobalConfig.externalPort
, ExternalJoinEnum.TCP
).build();

new RunOne()
...
.setExternalServer(externalServer)
.startup();
}
}

Simulated Client Test

If server uses TCP, simulated client should also be set to TCP.

class OneClient {
static void main() {
new ClientRunOne()
...
.setJoinEnum(ExternalJoinEnum.TCP)
.startup();
}
}

TCP Codec

tip

TCP codec prepends 4 bytes indicating message-body size.

+--------+----------------+
| int | Actual Content |
| 0x000? | ExternalMessage|
+--------+----------------+