@cadenza.io/service 2.3.1 → 2.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +34 -8
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +34 -8
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1899,12 +1899,23 @@ var SocketController = class _SocketController {
|
|
|
1899
1899
|
CadenzaService.createMetaTask(
|
|
1900
1900
|
"Connect to socket server",
|
|
1901
1901
|
(ctx) => {
|
|
1902
|
-
const {
|
|
1902
|
+
const {
|
|
1903
|
+
serviceInstanceId,
|
|
1904
|
+
communicationTypes,
|
|
1905
|
+
serviceName,
|
|
1906
|
+
serviceAddress,
|
|
1907
|
+
servicePort,
|
|
1908
|
+
protocol
|
|
1909
|
+
} = ctx;
|
|
1903
1910
|
const socketProtocol = protocol === "https" ? "wss" : "ws";
|
|
1904
1911
|
const port = protocol === "https" ? 443 : servicePort;
|
|
1905
1912
|
const URL = `${socketProtocol}://${serviceAddress}:${port}`;
|
|
1906
1913
|
const fetchId = `${serviceAddress}_${port}`;
|
|
1907
1914
|
let handshake = false;
|
|
1915
|
+
if (CadenzaService.get(`Socket handshake with ${URL}`)) {
|
|
1916
|
+
console.error("Socket client already exists", URL);
|
|
1917
|
+
return;
|
|
1918
|
+
}
|
|
1908
1919
|
const socket = (0, import_socket2.io)(URL, {
|
|
1909
1920
|
reconnection: true,
|
|
1910
1921
|
reconnectionAttempts: 5,
|
|
@@ -1992,7 +2003,7 @@ var SocketController = class _SocketController {
|
|
|
1992
2003
|
{ error: err.message, serviceName, socketId: socket.id, URL },
|
|
1993
2004
|
"error"
|
|
1994
2005
|
);
|
|
1995
|
-
CadenzaService.emit(
|
|
2006
|
+
CadenzaService.emit(`meta.socket_client.connect_error:${fetchId}`, err);
|
|
1996
2007
|
});
|
|
1997
2008
|
socket.on("reconnect_attempt", (attempt) => {
|
|
1998
2009
|
CadenzaService.log(`Reconnect attempt: ${attempt}`);
|
|
@@ -2033,8 +2044,8 @@ var SocketController = class _SocketController {
|
|
|
2033
2044
|
handshake = false;
|
|
2034
2045
|
});
|
|
2035
2046
|
socket.connect();
|
|
2036
|
-
CadenzaService.
|
|
2037
|
-
`
|
|
2047
|
+
const handshakeTask = CadenzaService.createMetaTask(
|
|
2048
|
+
`Socket handshake with ${URL}`,
|
|
2038
2049
|
async () => {
|
|
2039
2050
|
if (handshake) return;
|
|
2040
2051
|
handshake = true;
|
|
@@ -2068,7 +2079,7 @@ var SocketController = class _SocketController {
|
|
|
2068
2079
|
"Handshakes with socket server"
|
|
2069
2080
|
).doOn(`meta.socket_client.connected:${fetchId}`);
|
|
2070
2081
|
const delegateTask = CadenzaService.createMetaTask(
|
|
2071
|
-
`Delegate flow to ${URL}`,
|
|
2082
|
+
`Delegate flow to Socket service ${URL}`,
|
|
2072
2083
|
async (ctx2, emit) => {
|
|
2073
2084
|
if (ctx2.__remoteRoutineName === void 0) {
|
|
2074
2085
|
return;
|
|
@@ -2101,7 +2112,7 @@ var SocketController = class _SocketController {
|
|
|
2101
2112
|
`Delegate flow to service ${serviceName} with address ${URL}`
|
|
2102
2113
|
).doOn(`meta.service_registry.selected_instance_for_socket:${fetchId}`).attachSignal("meta.socket_client.delegated");
|
|
2103
2114
|
const transmitTask = CadenzaService.createMetaTask(
|
|
2104
|
-
`Transmit signal to ${URL}`,
|
|
2115
|
+
`Transmit signal to socket server ${URL}`,
|
|
2105
2116
|
async (ctx2, emit) => {
|
|
2106
2117
|
if (ctx2.__signalName === void 0) {
|
|
2107
2118
|
return;
|
|
@@ -2123,16 +2134,31 @@ var SocketController = class _SocketController {
|
|
|
2123
2134
|
).doOn(`meta.service_registry.selected_instance_for_socket:${fetchId}`).attachSignal("meta.socket_client.transmitted");
|
|
2124
2135
|
CadenzaService.createEphemeralMetaTask(
|
|
2125
2136
|
`Shutdown SocketClient ${URL}`,
|
|
2126
|
-
() => {
|
|
2137
|
+
(ctx2, emit) => {
|
|
2138
|
+
CadenzaService.log("Shutting down socket client", { URL, serviceName });
|
|
2127
2139
|
socket?.close();
|
|
2140
|
+
handshakeTask.destroy();
|
|
2128
2141
|
delegateTask.destroy();
|
|
2129
2142
|
transmitTask.destroy();
|
|
2143
|
+
emit(`meta.fetch.handshake_requested:${fetchId}`, {
|
|
2144
|
+
serviceInstanceId,
|
|
2145
|
+
serviceName,
|
|
2146
|
+
communicationTypes,
|
|
2147
|
+
serviceAddress,
|
|
2148
|
+
servicePort,
|
|
2149
|
+
protocol,
|
|
2150
|
+
handshakeData: {
|
|
2151
|
+
instanceId: CadenzaService.serviceRegistry.serviceInstanceId,
|
|
2152
|
+
serviceName: CadenzaService.serviceRegistry.serviceName
|
|
2153
|
+
}
|
|
2154
|
+
});
|
|
2130
2155
|
},
|
|
2131
2156
|
"Shuts down the socket client"
|
|
2132
2157
|
).doOn(
|
|
2133
2158
|
`meta.socket_shutdown_requested:${fetchId}`,
|
|
2134
2159
|
`meta.socket_client.disconnected:${fetchId}`,
|
|
2135
|
-
`meta.fetch.handshake_failed:${fetchId}
|
|
2160
|
+
`meta.fetch.handshake_failed:${fetchId}`,
|
|
2161
|
+
`meta.socket_client.connect_error:${fetchId}`
|
|
2136
2162
|
).emits("meta.socket_client_shutdown_complete");
|
|
2137
2163
|
return true;
|
|
2138
2164
|
},
|