@stomp/stompjs 6.0.0-beta1 → 6.1.0
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/LICENSE +202 -0
- package/README.md +31 -31
- package/bundles/stomp.umd.js +938 -919
- package/bundles/stomp.umd.js.map +1 -1
- package/bundles/stomp.umd.min.js +1 -1
- package/bundles/stomp.umd.min.js.map +1 -1
- package/esm6/augment-websocket.d.ts +5 -0
- package/esm6/augment-websocket.js +26 -0
- package/esm6/augment-websocket.js.map +1 -0
- package/esm6/byte.js +1 -1
- package/esm6/client.d.ts +26 -8
- package/esm6/client.js +152 -77
- package/esm6/client.js.map +1 -1
- package/esm6/compatibility/compat-client.js +20 -7
- package/esm6/compatibility/compat-client.js.map +1 -1
- package/esm6/compatibility/heartbeat-info.js.map +1 -1
- package/esm6/compatibility/stomp.js +1 -1
- package/esm6/compatibility/stomp.js.map +1 -1
- package/esm6/frame-impl.js +20 -7
- package/esm6/frame-impl.js.map +1 -1
- package/esm6/parser.js +14 -8
- package/esm6/parser.js.map +1 -1
- package/esm6/stomp-config.d.ts +12 -1
- package/esm6/stomp-config.js +3 -0
- package/esm6/stomp-config.js.map +1 -1
- package/esm6/stomp-handler.d.ts +3 -1
- package/esm6/stomp-handler.js +71 -60
- package/esm6/stomp-handler.js.map +1 -1
- package/esm6/stomp-headers.js.map +1 -1
- package/esm6/types.d.ts +17 -1
- package/esm6/types.js +9 -1
- package/esm6/types.js.map +1 -1
- package/esm6/versions.js +6 -2
- package/esm6/versions.js.map +1 -1
- package/package.json +12 -6
- package/LICENSE.md +0 -22
package/esm6/client.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { ITransaction } from './i-transaction';
|
|
|
2
2
|
import { StompConfig } from './stomp-config';
|
|
3
3
|
import { StompHeaders } from './stomp-headers';
|
|
4
4
|
import { StompSubscription } from './stomp-subscription';
|
|
5
|
-
import { closeEventCallbackType, debugFnType, frameCallbackType, IPublishParams, messageCallbackType, wsErrorCallbackType
|
|
5
|
+
import { ActivationState, closeEventCallbackType, debugFnType, frameCallbackType, IPublishParams, IStompSocket, messageCallbackType, wsErrorCallbackType } from './types';
|
|
6
6
|
import { Versions } from './versions';
|
|
7
7
|
/**
|
|
8
8
|
* STOMP Client Class.
|
|
@@ -53,6 +53,12 @@ export declare class Client {
|
|
|
53
53
|
* ```
|
|
54
54
|
*/
|
|
55
55
|
webSocketFactory: () => IStompSocket;
|
|
56
|
+
/**
|
|
57
|
+
* Will retry if Stomp connection is not established in specified milliseconds.
|
|
58
|
+
* Default 0, which implies wait for ever.
|
|
59
|
+
*/
|
|
60
|
+
connectionTimeout: number;
|
|
61
|
+
private _connectionWatcher;
|
|
56
62
|
/**
|
|
57
63
|
* automatically reconnect with delay in milliseconds, set to 0 to disable.
|
|
58
64
|
*/
|
|
@@ -108,11 +114,6 @@ export declare class Client {
|
|
|
108
114
|
* Underlying WebSocket instance, READONLY.
|
|
109
115
|
*/
|
|
110
116
|
readonly webSocket: IStompSocket;
|
|
111
|
-
/**
|
|
112
|
-
* Underlying IStompSocket (typically WebSocket) instance
|
|
113
|
-
* @internal
|
|
114
|
-
*/
|
|
115
|
-
protected _webSocket: IStompSocket;
|
|
116
117
|
/**
|
|
117
118
|
* Connection headers, important keys - `login`, `passcode`, `host`.
|
|
118
119
|
* Though STOMP 1.2 standard marks these keys to be present, check your broker documentation for
|
|
@@ -247,7 +248,21 @@ export declare class Client {
|
|
|
247
248
|
* if the client is active (connected or going to reconnect)
|
|
248
249
|
*/
|
|
249
250
|
readonly active: boolean;
|
|
250
|
-
|
|
251
|
+
/**
|
|
252
|
+
* It will be called on state change.
|
|
253
|
+
*
|
|
254
|
+
* When deactivating it may go from ACTIVE to INACTIVE without entering DEACTIVATING.
|
|
255
|
+
*/
|
|
256
|
+
onChangeState: (state: ActivationState) => void;
|
|
257
|
+
private _changeState;
|
|
258
|
+
private _resolveSocketClose;
|
|
259
|
+
/**
|
|
260
|
+
* Activation state.
|
|
261
|
+
*
|
|
262
|
+
* It will usually be ACTIVE or INACTIVE.
|
|
263
|
+
* When deactivating it may go from ACTIVE to INACTIVE without entering DEACTIVATING.
|
|
264
|
+
*/
|
|
265
|
+
state: ActivationState;
|
|
251
266
|
private _reconnector;
|
|
252
267
|
/**
|
|
253
268
|
* Create an instance.
|
|
@@ -272,9 +287,12 @@ export declare class Client {
|
|
|
272
287
|
* Disconnect if connected and stop auto reconnect loop.
|
|
273
288
|
* Appropriate callbacks will be invoked if underlying STOMP connection was connected.
|
|
274
289
|
*
|
|
290
|
+
* This call is async, it will resolve immediately if there is no underlying active websocket,
|
|
291
|
+
* otherwise, it will resolve after underlying websocket is properly disposed.
|
|
292
|
+
*
|
|
275
293
|
* To reactivate you can call [Client#activate]{@link Client#activate}.
|
|
276
294
|
*/
|
|
277
|
-
deactivate(): void
|
|
295
|
+
deactivate(): Promise<void>;
|
|
278
296
|
/**
|
|
279
297
|
* Force disconnect if there is an active connection by directly closing the underlying WebSocket.
|
|
280
298
|
* This is different than a normal disconnect where a DISCONNECT sequence is carried out with the broker.
|
package/esm6/client.js
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
1
10
|
import { StompHandler } from './stomp-handler';
|
|
2
|
-
import { StompSocketState } from './types';
|
|
11
|
+
import { ActivationState, StompSocketState, } from './types';
|
|
3
12
|
import { Versions } from './versions';
|
|
4
13
|
/**
|
|
5
14
|
* STOMP Client Class.
|
|
@@ -21,6 +30,11 @@ export class Client {
|
|
|
21
30
|
* ```
|
|
22
31
|
*/
|
|
23
32
|
this.stompVersions = Versions.default;
|
|
33
|
+
/**
|
|
34
|
+
* Will retry if Stomp connection is not established in specified milliseconds.
|
|
35
|
+
* Default 0, which implies wait for ever.
|
|
36
|
+
*/
|
|
37
|
+
this.connectionTimeout = 0;
|
|
24
38
|
/**
|
|
25
39
|
* automatically reconnect with delay in milliseconds, set to 0 to disable.
|
|
26
40
|
*/
|
|
@@ -72,7 +86,13 @@ export class Client {
|
|
|
72
86
|
* This is not an ideal solution, but a stop gap until the underlying issue is fixed at ReactNative library.
|
|
73
87
|
*/
|
|
74
88
|
this.appendMissingNULLonIncoming = false;
|
|
75
|
-
|
|
89
|
+
/**
|
|
90
|
+
* Activation state.
|
|
91
|
+
*
|
|
92
|
+
* It will usually be ACTIVE or INACTIVE.
|
|
93
|
+
* When deactivating it may go from ACTIVE to INACTIVE without entering DEACTIVATING.
|
|
94
|
+
*/
|
|
95
|
+
this.state = ActivationState.INACTIVE;
|
|
76
96
|
// Dummy callbacks
|
|
77
97
|
const noOp = () => { };
|
|
78
98
|
this.debug = noOp;
|
|
@@ -86,6 +106,7 @@ export class Client {
|
|
|
86
106
|
this.onWebSocketClose = noOp;
|
|
87
107
|
this.onWebSocketError = noOp;
|
|
88
108
|
this.logRawCommunication = false;
|
|
109
|
+
this.onChangeState = noOp;
|
|
89
110
|
// These parameters would typically get proper values before connect is called
|
|
90
111
|
this.connectHeaders = {};
|
|
91
112
|
this._disconnectHeaders = {};
|
|
@@ -96,7 +117,7 @@ export class Client {
|
|
|
96
117
|
* Underlying WebSocket instance, READONLY.
|
|
97
118
|
*/
|
|
98
119
|
get webSocket() {
|
|
99
|
-
return this._webSocket;
|
|
120
|
+
return this._stompHandler ? this._stompHandler._webSocket : undefined;
|
|
100
121
|
}
|
|
101
122
|
/**
|
|
102
123
|
* Disconnection headers.
|
|
@@ -114,7 +135,7 @@ export class Client {
|
|
|
114
135
|
* `true` if there is a active connection with STOMP Broker
|
|
115
136
|
*/
|
|
116
137
|
get connected() {
|
|
117
|
-
return
|
|
138
|
+
return !!this._stompHandler && this._stompHandler.connected;
|
|
118
139
|
}
|
|
119
140
|
/**
|
|
120
141
|
* version of STOMP protocol negotiated with the server, READONLY
|
|
@@ -126,7 +147,11 @@ export class Client {
|
|
|
126
147
|
* if the client is active (connected or going to reconnect)
|
|
127
148
|
*/
|
|
128
149
|
get active() {
|
|
129
|
-
return this.
|
|
150
|
+
return this.state === ActivationState.ACTIVE;
|
|
151
|
+
}
|
|
152
|
+
_changeState(state) {
|
|
153
|
+
this.state = state;
|
|
154
|
+
this.onChangeState(state);
|
|
130
155
|
}
|
|
131
156
|
/**
|
|
132
157
|
* Update configuration.
|
|
@@ -143,71 +168,102 @@ export class Client {
|
|
|
143
168
|
* Call [Client#deactivate]{@link Client#deactivate} to disconnect and stop reconnection attempts.
|
|
144
169
|
*/
|
|
145
170
|
activate() {
|
|
146
|
-
this.
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
async _connect() {
|
|
150
|
-
if (this.connected) {
|
|
151
|
-
this.debug('STOMP: already connected, nothing to do');
|
|
152
|
-
return;
|
|
171
|
+
if (this.state === ActivationState.DEACTIVATING) {
|
|
172
|
+
this.debug('Still DEACTIVATING, please await call to deactivate before trying to re-activate');
|
|
173
|
+
throw new Error('Still DEACTIVATING, can not activate now');
|
|
153
174
|
}
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
this.debug('Client has been marked inactive, will not attempt to connect');
|
|
175
|
+
if (this.active) {
|
|
176
|
+
this.debug('Already ACTIVE, ignoring request to activate');
|
|
157
177
|
return;
|
|
158
178
|
}
|
|
159
|
-
this.
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
heartbeatIncoming: this.heartbeatIncoming,
|
|
168
|
-
heartbeatOutgoing: this.heartbeatOutgoing,
|
|
169
|
-
splitLargeFrames: this.splitLargeFrames,
|
|
170
|
-
maxWebSocketChunkSize: this.maxWebSocketChunkSize,
|
|
171
|
-
forceBinaryWSFrames: this.forceBinaryWSFrames,
|
|
172
|
-
logRawCommunication: this.logRawCommunication,
|
|
173
|
-
appendMissingNULLonIncoming: this.appendMissingNULLonIncoming,
|
|
174
|
-
discardWebsocketOnCommFailure: this.discardWebsocketOnCommFailure,
|
|
175
|
-
onConnect: (frame) => {
|
|
176
|
-
if (!this._active) {
|
|
177
|
-
this.debug('STOMP got connected while deactivate was issued, will disconnect now');
|
|
178
|
-
this._disposeStompHandler();
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
this.onConnect(frame);
|
|
182
|
-
},
|
|
183
|
-
onDisconnect: (frame) => {
|
|
184
|
-
this.onDisconnect(frame);
|
|
185
|
-
},
|
|
186
|
-
onStompError: (frame) => {
|
|
187
|
-
this.onStompError(frame);
|
|
188
|
-
},
|
|
189
|
-
onWebSocketClose: (evt) => {
|
|
190
|
-
this.onWebSocketClose(evt);
|
|
191
|
-
// The callback is called before attempting to reconnect, this would allow the client
|
|
192
|
-
// to be `deactivated` in the callback.
|
|
193
|
-
if (this._active) {
|
|
194
|
-
this._schedule_reconnect();
|
|
195
|
-
}
|
|
196
|
-
},
|
|
197
|
-
onWebSocketError: (evt) => {
|
|
198
|
-
this.onWebSocketError(evt);
|
|
199
|
-
},
|
|
200
|
-
onUnhandledMessage: (message) => {
|
|
201
|
-
this.onUnhandledMessage(message);
|
|
202
|
-
},
|
|
203
|
-
onUnhandledReceipt: (frame) => {
|
|
204
|
-
this.onUnhandledReceipt(frame);
|
|
205
|
-
},
|
|
206
|
-
onUnhandledFrame: (frame) => {
|
|
207
|
-
this.onUnhandledFrame(frame);
|
|
179
|
+
this._changeState(ActivationState.ACTIVE);
|
|
180
|
+
this._connect();
|
|
181
|
+
}
|
|
182
|
+
_connect() {
|
|
183
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
184
|
+
if (this.connected) {
|
|
185
|
+
this.debug('STOMP: already connected, nothing to do');
|
|
186
|
+
return;
|
|
208
187
|
}
|
|
188
|
+
yield this.beforeConnect();
|
|
189
|
+
if (!this.active) {
|
|
190
|
+
this.debug('Client has been marked inactive, will not attempt to connect');
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
// setup connection watcher
|
|
194
|
+
if (this.connectionTimeout > 0) {
|
|
195
|
+
this._connectionWatcher = setTimeout(() => {
|
|
196
|
+
// Connection not established, close the underlying socket
|
|
197
|
+
// a reconnection will be attempted
|
|
198
|
+
this.debug(`Connection not established in ${this.connectionTimeout}ms, closing socket`);
|
|
199
|
+
this.forceDisconnect();
|
|
200
|
+
}, this.connectionTimeout);
|
|
201
|
+
}
|
|
202
|
+
this.debug('Opening Web Socket...');
|
|
203
|
+
// Get the actual WebSocket (or a similar object)
|
|
204
|
+
const webSocket = this._createWebSocket();
|
|
205
|
+
this._stompHandler = new StompHandler(this, webSocket, {
|
|
206
|
+
debug: this.debug,
|
|
207
|
+
stompVersions: this.stompVersions,
|
|
208
|
+
connectHeaders: this.connectHeaders,
|
|
209
|
+
disconnectHeaders: this._disconnectHeaders,
|
|
210
|
+
heartbeatIncoming: this.heartbeatIncoming,
|
|
211
|
+
heartbeatOutgoing: this.heartbeatOutgoing,
|
|
212
|
+
splitLargeFrames: this.splitLargeFrames,
|
|
213
|
+
maxWebSocketChunkSize: this.maxWebSocketChunkSize,
|
|
214
|
+
forceBinaryWSFrames: this.forceBinaryWSFrames,
|
|
215
|
+
logRawCommunication: this.logRawCommunication,
|
|
216
|
+
appendMissingNULLonIncoming: this.appendMissingNULLonIncoming,
|
|
217
|
+
discardWebsocketOnCommFailure: this.discardWebsocketOnCommFailure,
|
|
218
|
+
onConnect: frame => {
|
|
219
|
+
// Successfully connected, stop the connection watcher
|
|
220
|
+
if (this._connectionWatcher) {
|
|
221
|
+
clearTimeout(this._connectionWatcher);
|
|
222
|
+
this._connectionWatcher = undefined;
|
|
223
|
+
}
|
|
224
|
+
if (!this.active) {
|
|
225
|
+
this.debug('STOMP got connected while deactivate was issued, will disconnect now');
|
|
226
|
+
this._disposeStompHandler();
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
this.onConnect(frame);
|
|
230
|
+
},
|
|
231
|
+
onDisconnect: frame => {
|
|
232
|
+
this.onDisconnect(frame);
|
|
233
|
+
},
|
|
234
|
+
onStompError: frame => {
|
|
235
|
+
this.onStompError(frame);
|
|
236
|
+
},
|
|
237
|
+
onWebSocketClose: evt => {
|
|
238
|
+
this._stompHandler = undefined; // a new one will be created in case of a reconnect
|
|
239
|
+
if (this.state === ActivationState.DEACTIVATING) {
|
|
240
|
+
// Mark deactivation complete
|
|
241
|
+
this._resolveSocketClose();
|
|
242
|
+
this._resolveSocketClose = undefined;
|
|
243
|
+
this._changeState(ActivationState.INACTIVE);
|
|
244
|
+
}
|
|
245
|
+
this.onWebSocketClose(evt);
|
|
246
|
+
// The callback is called before attempting to reconnect, this would allow the client
|
|
247
|
+
// to be `deactivated` in the callback.
|
|
248
|
+
if (this.active) {
|
|
249
|
+
this._schedule_reconnect();
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
onWebSocketError: evt => {
|
|
253
|
+
this.onWebSocketError(evt);
|
|
254
|
+
},
|
|
255
|
+
onUnhandledMessage: message => {
|
|
256
|
+
this.onUnhandledMessage(message);
|
|
257
|
+
},
|
|
258
|
+
onUnhandledReceipt: frame => {
|
|
259
|
+
this.onUnhandledReceipt(frame);
|
|
260
|
+
},
|
|
261
|
+
onUnhandledFrame: frame => {
|
|
262
|
+
this.onUnhandledFrame(frame);
|
|
263
|
+
},
|
|
264
|
+
});
|
|
265
|
+
this._stompHandler.start();
|
|
209
266
|
});
|
|
210
|
-
this._stompHandler.start();
|
|
211
267
|
}
|
|
212
268
|
_createWebSocket() {
|
|
213
269
|
let webSocket;
|
|
@@ -232,16 +288,38 @@ export class Client {
|
|
|
232
288
|
* Disconnect if connected and stop auto reconnect loop.
|
|
233
289
|
* Appropriate callbacks will be invoked if underlying STOMP connection was connected.
|
|
234
290
|
*
|
|
291
|
+
* This call is async, it will resolve immediately if there is no underlying active websocket,
|
|
292
|
+
* otherwise, it will resolve after underlying websocket is properly disposed.
|
|
293
|
+
*
|
|
235
294
|
* To reactivate you can call [Client#activate]{@link Client#activate}.
|
|
236
295
|
*/
|
|
237
296
|
deactivate() {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
297
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
298
|
+
let retPromise;
|
|
299
|
+
if (this.state !== ActivationState.ACTIVE) {
|
|
300
|
+
this.debug(`Already ${ActivationState[this.state]}, ignoring call to deactivate`);
|
|
301
|
+
return Promise.resolve();
|
|
302
|
+
}
|
|
303
|
+
this._changeState(ActivationState.DEACTIVATING);
|
|
304
|
+
// Clear if a reconnection was scheduled
|
|
305
|
+
if (this._reconnector) {
|
|
306
|
+
clearTimeout(this._reconnector);
|
|
307
|
+
}
|
|
308
|
+
if (this._stompHandler &&
|
|
309
|
+
this.webSocket.readyState !== StompSocketState.CLOSED) {
|
|
310
|
+
// we need to wait for underlying websocket to close
|
|
311
|
+
retPromise = new Promise((resolve, reject) => {
|
|
312
|
+
this._resolveSocketClose = resolve;
|
|
313
|
+
});
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
// indicate that auto reconnect loop should terminate
|
|
317
|
+
this._changeState(ActivationState.INACTIVE);
|
|
318
|
+
return Promise.resolve();
|
|
319
|
+
}
|
|
320
|
+
this._disposeStompHandler();
|
|
321
|
+
return retPromise;
|
|
322
|
+
});
|
|
245
323
|
}
|
|
246
324
|
/**
|
|
247
325
|
* Force disconnect if there is an active connection by directly closing the underlying WebSocket.
|
|
@@ -250,11 +328,8 @@ export class Client {
|
|
|
250
328
|
* To stop further reconnects call [Client#deactivate]{@link Client#deactivate} as well.
|
|
251
329
|
*/
|
|
252
330
|
forceDisconnect() {
|
|
253
|
-
if (this.
|
|
254
|
-
|
|
255
|
-
|| this._webSocket.readyState === StompSocketState.OPEN) {
|
|
256
|
-
this._stompHandler._closeWebsocket();
|
|
257
|
-
}
|
|
331
|
+
if (this._stompHandler) {
|
|
332
|
+
this._stompHandler.forceDisconnect();
|
|
258
333
|
}
|
|
259
334
|
}
|
|
260
335
|
_disposeStompHandler() {
|
package/esm6/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,18 +38,31 @@ export class CompatClient extends Client {
|
|
|
38
38
|
let errorCallback;
|
|
39
39
|
let headers = {};
|
|
40
40
|
if (args.length < 2) {
|
|
41
|
-
throw new Error(
|
|
41
|
+
throw new Error('Connect requires at least 2 arguments');
|
|
42
42
|
}
|
|
43
|
-
if (typeof
|
|
43
|
+
if (typeof args[1] === 'function') {
|
|
44
44
|
[headers, connectCallback, errorCallback, closeEventCallback] = args;
|
|
45
45
|
}
|
|
46
46
|
else {
|
|
47
47
|
switch (args.length) {
|
|
48
48
|
case 6:
|
|
49
|
-
[
|
|
49
|
+
[
|
|
50
|
+
headers.login,
|
|
51
|
+
headers.passcode,
|
|
52
|
+
connectCallback,
|
|
53
|
+
errorCallback,
|
|
54
|
+
closeEventCallback,
|
|
55
|
+
headers.host,
|
|
56
|
+
] = args;
|
|
50
57
|
break;
|
|
51
58
|
default:
|
|
52
|
-
[
|
|
59
|
+
[
|
|
60
|
+
headers.login,
|
|
61
|
+
headers.passcode,
|
|
62
|
+
connectCallback,
|
|
63
|
+
errorCallback,
|
|
64
|
+
closeEventCallback,
|
|
65
|
+
] = args;
|
|
53
66
|
}
|
|
54
67
|
}
|
|
55
68
|
return [headers, connectCallback, errorCallback, closeEventCallback];
|
|
@@ -137,7 +150,7 @@ export class CompatClient extends Client {
|
|
|
137
150
|
*/
|
|
138
151
|
send(destination, headers = {}, body = '') {
|
|
139
152
|
headers = Object.assign({}, headers);
|
|
140
|
-
const skipContentLengthHeader =
|
|
153
|
+
const skipContentLengthHeader = headers['content-length'] === false;
|
|
141
154
|
if (skipContentLengthHeader) {
|
|
142
155
|
delete headers['content-length'];
|
|
143
156
|
}
|
|
@@ -145,7 +158,7 @@ export class CompatClient extends Client {
|
|
|
145
158
|
destination,
|
|
146
159
|
headers: headers,
|
|
147
160
|
body,
|
|
148
|
-
skipContentLengthHeader
|
|
161
|
+
skipContentLengthHeader,
|
|
149
162
|
});
|
|
150
163
|
}
|
|
151
164
|
/**
|
|
@@ -162,7 +175,7 @@ export class CompatClient extends Client {
|
|
|
162
175
|
* **Deprecated**
|
|
163
176
|
*/
|
|
164
177
|
get ws() {
|
|
165
|
-
return this.
|
|
178
|
+
return this.webSocket;
|
|
166
179
|
}
|
|
167
180
|
/**
|
|
168
181
|
* Available for backward compatibility, renamed to [Client#connectedVersion]{@link Client#connectedVersion}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compat-client.js","sourceRoot":"","sources":["../../src/compatibility/compat-client.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"compat-client.js","sourceRoot":"","sources":["../../src/compatibility/compat-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-info.js","sourceRoot":"","sources":["../../src/compatibility/heartbeat-info.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,OAAO,aAAa;IACxB,YAAoB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;
|
|
1
|
+
{"version":3,"file":"heartbeat-info.js","sourceRoot":"","sources":["../../src/compatibility/heartbeat-info.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,OAAO,aAAa;IACxB,YAAoB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;IAAG,CAAC;IAE5C,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;IACvC,CAAC;IAED,IAAI,QAAQ,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,KAAK,CAAC;IACxC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;IACvC,CAAC;IAED,IAAI,QAAQ,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,KAAK,CAAC;IACxC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stomp.js","sourceRoot":"","sources":["../../src/compatibility/stomp.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"stomp.js","sourceRoot":"","sources":["../../src/compatibility/stomp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAW/C;;;;;;;;GAQG;AACH,MAAM,OAAO,KAAK;IAqBhB;;;;;;;;;;;;;OAaG;IACI,MAAM,CAAC,MAAM,CAAC,GAAW,EAAE,SAAoB;QACpD,mEAAmE;QACnE,yBAAyB;QACzB,EAAE;QACF,iDAAiD;QACjD,EAAE;QACF,0CAA0C;QAC1C,EAAE;QACF,oCAAoC;QACpC,EAAE;QACF,mEAAmE;QACnE,WAAW;QAEX,yCAAyC;QACzC,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;SACjD;QACD,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc,IAAI,SAAS,CAAC;YAChD,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACnC,CAAC,CAAC;QAEF,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,MAAM,CAAC,IAAI,CAAC,EAAO;QACxB,IAAI,IAAe,CAAC;QAEpB,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;YAC5B,IAAI,GAAG,EAAE,CAAC;SACX;aAAM;YACL,OAAO,CAAC,IAAI,CACV,sEAAsE;gBACpE,+EAA+E,CAClF,CAAC;YACF,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;SACjB;QAED,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;;AA9FD;;;;;;;;;;;;;;;;GAgBG;AACH,yCAAyC;AAC3B,oBAAc,GAAQ,IAAI,CAAC"}
|
package/esm6/frame-impl.js
CHANGED
|
@@ -11,7 +11,7 @@ export class FrameImpl {
|
|
|
11
11
|
* @internal
|
|
12
12
|
*/
|
|
13
13
|
constructor(params) {
|
|
14
|
-
const { command, headers, body, binaryBody, escapeHeaderValues, skipContentLengthHeader } = params;
|
|
14
|
+
const { command, headers, body, binaryBody, escapeHeaderValues, skipContentLengthHeader, } = params;
|
|
15
15
|
this.command = command;
|
|
16
16
|
this.headers = Object.assign({}, headers || {});
|
|
17
17
|
if (binaryBody) {
|
|
@@ -56,7 +56,9 @@ export class FrameImpl {
|
|
|
56
56
|
const idx = header.indexOf(':');
|
|
57
57
|
const key = trim(header[0]);
|
|
58
58
|
let value = trim(header[1]);
|
|
59
|
-
if (escapeHeaderValues &&
|
|
59
|
+
if (escapeHeaderValues &&
|
|
60
|
+
rawFrame.command !== 'CONNECT' &&
|
|
61
|
+
rawFrame.command !== 'CONNECTED') {
|
|
60
62
|
value = FrameImpl.hdrValueUnEscape(value);
|
|
61
63
|
}
|
|
62
64
|
headers[key] = value;
|
|
@@ -65,7 +67,7 @@ export class FrameImpl {
|
|
|
65
67
|
command: rawFrame.command,
|
|
66
68
|
headers,
|
|
67
69
|
binaryBody: rawFrame.binaryBody,
|
|
68
|
-
escapeHeaderValues
|
|
70
|
+
escapeHeaderValues,
|
|
69
71
|
});
|
|
70
72
|
}
|
|
71
73
|
/**
|
|
@@ -97,14 +99,17 @@ export class FrameImpl {
|
|
|
97
99
|
}
|
|
98
100
|
for (const name of Object.keys(this.headers || {})) {
|
|
99
101
|
const value = this.headers[name];
|
|
100
|
-
if (this.escapeHeaderValues &&
|
|
102
|
+
if (this.escapeHeaderValues &&
|
|
103
|
+
this.command !== 'CONNECT' &&
|
|
104
|
+
this.command !== 'CONNECTED') {
|
|
101
105
|
lines.push(`${name}:${FrameImpl.hdrValueEscape(`${value}`)}`);
|
|
102
106
|
}
|
|
103
107
|
else {
|
|
104
108
|
lines.push(`${name}:${value}`);
|
|
105
109
|
}
|
|
106
110
|
}
|
|
107
|
-
if (this.isBinaryBody ||
|
|
111
|
+
if (this.isBinaryBody ||
|
|
112
|
+
(!this.isBodyEmpty() && !this.skipContentLengthHeader)) {
|
|
108
113
|
lines.push(`content-length:${this.bodyLength()}`);
|
|
109
114
|
}
|
|
110
115
|
return lines.join(BYTE.LF) + BYTE.LF + BYTE.LF;
|
|
@@ -145,13 +150,21 @@ export class FrameImpl {
|
|
|
145
150
|
* Escape header values
|
|
146
151
|
*/
|
|
147
152
|
static hdrValueEscape(str) {
|
|
148
|
-
return str
|
|
153
|
+
return str
|
|
154
|
+
.replace(/\\/g, '\\\\')
|
|
155
|
+
.replace(/\r/g, '\\r')
|
|
156
|
+
.replace(/\n/g, '\\n')
|
|
157
|
+
.replace(/:/g, '\\c');
|
|
149
158
|
}
|
|
150
159
|
/**
|
|
151
160
|
* UnEscape header values
|
|
152
161
|
*/
|
|
153
162
|
static hdrValueUnEscape(str) {
|
|
154
|
-
return str
|
|
163
|
+
return str
|
|
164
|
+
.replace(/\\r/g, '\r')
|
|
165
|
+
.replace(/\\n/g, '\n')
|
|
166
|
+
.replace(/\\c/g, ':')
|
|
167
|
+
.replace(/\\\\/g, '\\');
|
|
155
168
|
}
|
|
156
169
|
}
|
|
157
170
|
//# sourceMappingURL=frame-impl.js.map
|
package/esm6/frame-impl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame-impl.js","sourceRoot":"","sources":["../src/frame-impl.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"frame-impl.js","sourceRoot":"","sources":["../src/frame-impl.ts"],"names":[],"mappings":"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"}
|