@ariva-mds/mds 2.61.0 → 2.62.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.
|
@@ -16,9 +16,9 @@ class MdsConnection {
|
|
|
16
16
|
* construct an MdsConnection
|
|
17
17
|
*/
|
|
18
18
|
constructor(websocketUrl, authdataCallback, options = { debug: false }) {
|
|
19
|
+
this.waitingForReconnect = [];
|
|
19
20
|
this.state = new MdsConnectionState_1.MdsConnectionState();
|
|
20
21
|
this.waitingForAuthentification = [];
|
|
21
|
-
this.waitingForReconnect = [];
|
|
22
22
|
this.nextGeneratedRequestId = 0;
|
|
23
23
|
this.runningRequests = new Map();
|
|
24
24
|
this.isDebug = false;
|
|
@@ -33,7 +33,7 @@ class MdsConnection {
|
|
|
33
33
|
*/
|
|
34
34
|
this.sourceCache = undefined;
|
|
35
35
|
/**
|
|
36
|
-
* gets the
|
|
36
|
+
* gets the trading time for a source
|
|
37
37
|
* */
|
|
38
38
|
this.tradingtimeCache = undefined;
|
|
39
39
|
/**
|
|
@@ -54,7 +54,7 @@ class MdsConnection {
|
|
|
54
54
|
this.websocket = new reconnecting_websocket_1.default(websocketUrl, [], options.wsOptions);
|
|
55
55
|
const outer = this;
|
|
56
56
|
// open-handler -> resend open requests from previous connection
|
|
57
|
-
this.websocket.onopen =
|
|
57
|
+
this.websocket.onopen = () => {
|
|
58
58
|
outer.debug(`websocket open, resending ${outer.waitingForReconnect.length} items`);
|
|
59
59
|
outer.state.connectionOpened();
|
|
60
60
|
for (const request of outer.waitingForReconnect) {
|
|
@@ -62,7 +62,7 @@ class MdsConnection {
|
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
64
|
// close handler -> store open requests for resending on reconnect
|
|
65
|
-
this.websocket.onclose =
|
|
65
|
+
this.websocket.onclose = () => {
|
|
66
66
|
outer.debug(`websocket closed, queuing ${outer.waitingForReconnect.length} items`);
|
|
67
67
|
outer.state.connectionClosed();
|
|
68
68
|
outer.waitingForReconnect = Array.from(outer.runningRequests.values());
|
|
@@ -196,7 +196,7 @@ class MdsConnection {
|
|
|
196
196
|
}).pipe((0, rxjs_1.map)((x) => (0, models_1.MarketstateResponseSearchFromJSON)(x.dataMarketstate)));
|
|
197
197
|
}
|
|
198
198
|
/**
|
|
199
|
-
* create a
|
|
199
|
+
* create a market state observable that can be subscribed to, contains only delta for every marketstate
|
|
200
200
|
*/
|
|
201
201
|
marketstateUpdates(marketstateQueries, quality) {
|
|
202
202
|
return this.observable({
|
|
@@ -207,7 +207,7 @@ class MdsConnection {
|
|
|
207
207
|
}).pipe((0, rxjs_1.map)((x) => (0, models_1.MarketstateResponseSearchFromJSON)(x.dataMarketstate)));
|
|
208
208
|
}
|
|
209
209
|
/**
|
|
210
|
-
* create a
|
|
210
|
+
* create a market state observable that can be subscribed to, contains only full state for every marketstate
|
|
211
211
|
*/
|
|
212
212
|
marketstatesStates(marketstateQueries, quality) {
|
|
213
213
|
return this.marketstates(marketstateQueries, quality).pipe((0, rxjs_1.map)((x) => x.state));
|
|
@@ -336,6 +336,20 @@ class MdsConnection {
|
|
|
336
336
|
}
|
|
337
337
|
}).pipe((0, rxjs_1.map)(state => (0, models_1.TimeseriesBidAskDataFromJSON)(state.dataTimeseriesBidAsk)));
|
|
338
338
|
}
|
|
339
|
+
/**
|
|
340
|
+
* Returns the Orderbook for the specified Marketstate.
|
|
341
|
+
* */
|
|
342
|
+
topflop(listId, sourcePriorities, quality, topSize, flopSize) {
|
|
343
|
+
return this.observable({
|
|
344
|
+
subscribeListTopflop: {
|
|
345
|
+
listId: listId,
|
|
346
|
+
sourcePriorities: sourcePriorities,
|
|
347
|
+
topSize: topSize,
|
|
348
|
+
flopSize: flopSize,
|
|
349
|
+
quality: quality
|
|
350
|
+
}
|
|
351
|
+
}).pipe((0, rxjs_1.map)(state => (0, models_1.TopflopListFromJSON)(state.dataTopflopList)));
|
|
352
|
+
}
|
|
339
353
|
// #############################################################################################
|
|
340
354
|
updateExistingMarketstateWithDeltaUpdate(existingEntry, update) {
|
|
341
355
|
const existingJson = (0, models_1.MarketstateResponseSearchToJSON)(existingEntry);
|
|
@@ -438,16 +452,14 @@ class MdsConnection {
|
|
|
438
452
|
if (request.promiseResolve && request.promiseReject) {
|
|
439
453
|
if (msg.isError) {
|
|
440
454
|
request.promiseReject(msg.errorMessage);
|
|
441
|
-
this.runningRequests.delete(msg.requestId);
|
|
442
455
|
}
|
|
443
456
|
else if (msg.isComplete) {
|
|
444
457
|
request.promiseResolve(msg);
|
|
445
|
-
this.runningRequests.delete(msg.requestId);
|
|
446
458
|
}
|
|
447
459
|
else {
|
|
448
460
|
request.promiseReject(msg.errorMessage);
|
|
449
|
-
this.runningRequests.delete(msg.requestId);
|
|
450
461
|
}
|
|
462
|
+
this.runningRequests.delete(msg.requestId);
|
|
451
463
|
}
|
|
452
464
|
else if (request.observableSubscriber) {
|
|
453
465
|
if (msg.isError) {
|
|
@@ -3,16 +3,16 @@ import { MdsConnectionState } from './MdsConnectionState';
|
|
|
3
3
|
import { RunningRequest } from './RunningRequest';
|
|
4
4
|
import { Observable, map, retry, repeat } from 'rxjs';
|
|
5
5
|
import { MarketstateUpdate } from './MarketstateUpdate';
|
|
6
|
-
import { AfuCompanyProfileFromJSON, BidAskHistoryDataFromJSON, ListingdataWithIdAndQualityFromJSON, MarketdepthWithIdFromJSON, MarketstateResponseSearchFromJSON, MarketstateResponseSearchToJSON, MasterdataMergedSummaryWithIdFromJSON, PerformanceDataForTimeRangeFromJSON, SourcedataFromJSON, TickHistoryDataFromJSON, TimeseriesBidAskDataFromJSON, TimeseriesDataFromJSON, TradetickerEventFromJSON, TradingtimeFromJSON, TradingtimeInfoReplyFromJSON } from '../models';
|
|
6
|
+
import { AfuCompanyProfileFromJSON, BidAskHistoryDataFromJSON, ListingdataWithIdAndQualityFromJSON, MarketdepthWithIdFromJSON, MarketstateResponseSearchFromJSON, MarketstateResponseSearchToJSON, MasterdataMergedSummaryWithIdFromJSON, PerformanceDataForTimeRangeFromJSON, SourcedataFromJSON, TickHistoryDataFromJSON, TimeseriesBidAskDataFromJSON, TimeseriesDataFromJSON, TopflopListFromJSON, TradetickerEventFromJSON, TradingtimeFromJSON, TradingtimeInfoReplyFromJSON } from '../models';
|
|
7
7
|
import { LruCache } from '../lrucache';
|
|
8
8
|
export class MdsConnection {
|
|
9
9
|
/**
|
|
10
10
|
* construct an MdsConnection
|
|
11
11
|
*/
|
|
12
12
|
constructor(websocketUrl, authdataCallback, options = { debug: false }) {
|
|
13
|
+
this.waitingForReconnect = [];
|
|
13
14
|
this.state = new MdsConnectionState();
|
|
14
15
|
this.waitingForAuthentification = [];
|
|
15
|
-
this.waitingForReconnect = [];
|
|
16
16
|
this.nextGeneratedRequestId = 0;
|
|
17
17
|
this.runningRequests = new Map();
|
|
18
18
|
this.isDebug = false;
|
|
@@ -27,7 +27,7 @@ export class MdsConnection {
|
|
|
27
27
|
*/
|
|
28
28
|
this.sourceCache = undefined;
|
|
29
29
|
/**
|
|
30
|
-
* gets the
|
|
30
|
+
* gets the trading time for a source
|
|
31
31
|
* */
|
|
32
32
|
this.tradingtimeCache = undefined;
|
|
33
33
|
/**
|
|
@@ -48,7 +48,7 @@ export class MdsConnection {
|
|
|
48
48
|
this.websocket = new ReconnectingWebSocket(websocketUrl, [], options.wsOptions);
|
|
49
49
|
const outer = this;
|
|
50
50
|
// open-handler -> resend open requests from previous connection
|
|
51
|
-
this.websocket.onopen =
|
|
51
|
+
this.websocket.onopen = () => {
|
|
52
52
|
outer.debug(`websocket open, resending ${outer.waitingForReconnect.length} items`);
|
|
53
53
|
outer.state.connectionOpened();
|
|
54
54
|
for (const request of outer.waitingForReconnect) {
|
|
@@ -56,7 +56,7 @@ export class MdsConnection {
|
|
|
56
56
|
}
|
|
57
57
|
};
|
|
58
58
|
// close handler -> store open requests for resending on reconnect
|
|
59
|
-
this.websocket.onclose =
|
|
59
|
+
this.websocket.onclose = () => {
|
|
60
60
|
outer.debug(`websocket closed, queuing ${outer.waitingForReconnect.length} items`);
|
|
61
61
|
outer.state.connectionClosed();
|
|
62
62
|
outer.waitingForReconnect = Array.from(outer.runningRequests.values());
|
|
@@ -190,7 +190,7 @@ export class MdsConnection {
|
|
|
190
190
|
}).pipe(map((x) => MarketstateResponseSearchFromJSON(x.dataMarketstate)));
|
|
191
191
|
}
|
|
192
192
|
/**
|
|
193
|
-
* create a
|
|
193
|
+
* create a market state observable that can be subscribed to, contains only delta for every marketstate
|
|
194
194
|
*/
|
|
195
195
|
marketstateUpdates(marketstateQueries, quality) {
|
|
196
196
|
return this.observable({
|
|
@@ -201,7 +201,7 @@ export class MdsConnection {
|
|
|
201
201
|
}).pipe(map((x) => MarketstateResponseSearchFromJSON(x.dataMarketstate)));
|
|
202
202
|
}
|
|
203
203
|
/**
|
|
204
|
-
* create a
|
|
204
|
+
* create a market state observable that can be subscribed to, contains only full state for every marketstate
|
|
205
205
|
*/
|
|
206
206
|
marketstatesStates(marketstateQueries, quality) {
|
|
207
207
|
return this.marketstates(marketstateQueries, quality).pipe(map((x) => x.state));
|
|
@@ -330,6 +330,20 @@ export class MdsConnection {
|
|
|
330
330
|
}
|
|
331
331
|
}).pipe(map(state => TimeseriesBidAskDataFromJSON(state.dataTimeseriesBidAsk)));
|
|
332
332
|
}
|
|
333
|
+
/**
|
|
334
|
+
* Returns the Orderbook for the specified Marketstate.
|
|
335
|
+
* */
|
|
336
|
+
topflop(listId, sourcePriorities, quality, topSize, flopSize) {
|
|
337
|
+
return this.observable({
|
|
338
|
+
subscribeListTopflop: {
|
|
339
|
+
listId: listId,
|
|
340
|
+
sourcePriorities: sourcePriorities,
|
|
341
|
+
topSize: topSize,
|
|
342
|
+
flopSize: flopSize,
|
|
343
|
+
quality: quality
|
|
344
|
+
}
|
|
345
|
+
}).pipe(map(state => TopflopListFromJSON(state.dataTopflopList)));
|
|
346
|
+
}
|
|
333
347
|
// #############################################################################################
|
|
334
348
|
updateExistingMarketstateWithDeltaUpdate(existingEntry, update) {
|
|
335
349
|
const existingJson = MarketstateResponseSearchToJSON(existingEntry);
|
|
@@ -432,16 +446,14 @@ export class MdsConnection {
|
|
|
432
446
|
if (request.promiseResolve && request.promiseReject) {
|
|
433
447
|
if (msg.isError) {
|
|
434
448
|
request.promiseReject(msg.errorMessage);
|
|
435
|
-
this.runningRequests.delete(msg.requestId);
|
|
436
449
|
}
|
|
437
450
|
else if (msg.isComplete) {
|
|
438
451
|
request.promiseResolve(msg);
|
|
439
|
-
this.runningRequests.delete(msg.requestId);
|
|
440
452
|
}
|
|
441
453
|
else {
|
|
442
454
|
request.promiseReject(msg.errorMessage);
|
|
443
|
-
this.runningRequests.delete(msg.requestId);
|
|
444
455
|
}
|
|
456
|
+
this.runningRequests.delete(msg.requestId);
|
|
445
457
|
}
|
|
446
458
|
else if (request.observableSubscriber) {
|
|
447
459
|
if (msg.isError) {
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { MdsAuthdata } from './MdsAuthdata';
|
|
2
|
+
import { RunningRequest } from './RunningRequest';
|
|
2
3
|
import { MdsOptions } from './MdsOptions';
|
|
3
4
|
import { Observable } from 'rxjs';
|
|
4
5
|
import { MarketstateUpdate } from './MarketstateUpdate';
|
|
5
|
-
import { AfuCompanyProfile, BidAskHistoryData, ListingdataWithIdAndQuality, MarketdepthWithId, MarketstateResponseSearch, MasterdataMergedSummaryWithId, OrderBookVariant, PerformanceDataForTimeRange, Quality, Resolution, Sourcedata, TickHistoryData, TimeRange, TimeseriesBidAskData, TimeseriesData, TradetickerEvent, Tradingtime, TradingtimeInfoReply, WebSocketMessage } from '../models';
|
|
6
|
+
import { AfuCompanyProfile, BidAskHistoryData, ListingdataWithIdAndQuality, MarketdepthWithId, MarketstateResponseSearch, MasterdataMergedSummaryWithId, OrderBookVariant, PerformanceDataForTimeRange, Quality, Resolution, Sourcedata, TickHistoryData, TimeRange, TimeseriesBidAskData, TimeseriesData, TopflopList, TradetickerEvent, Tradingtime, TradingtimeInfoReply, WebSocketMessage } from '../models';
|
|
6
7
|
export declare class MdsConnection {
|
|
8
|
+
protected waitingForReconnect: RunningRequest[];
|
|
7
9
|
private readonly websocket;
|
|
8
10
|
private readonly authdataCallback;
|
|
9
11
|
private readonly state;
|
|
10
12
|
private waitingForAuthentification;
|
|
11
|
-
private waitingForReconnect;
|
|
12
13
|
private nextGeneratedRequestId;
|
|
13
14
|
private readonly runningRequests;
|
|
14
15
|
private readonly isDebug;
|
|
@@ -36,7 +37,7 @@ export declare class MdsConnection {
|
|
|
36
37
|
private sourceCache;
|
|
37
38
|
source(sourceId: string): Promise<Sourcedata>;
|
|
38
39
|
/**
|
|
39
|
-
* gets the
|
|
40
|
+
* gets the trading time for a source
|
|
40
41
|
* */
|
|
41
42
|
private tradingtimeCache;
|
|
42
43
|
tradingtime(sourceId: string): Promise<Tradingtime>;
|
|
@@ -79,11 +80,11 @@ export declare class MdsConnection {
|
|
|
79
80
|
*/
|
|
80
81
|
marketstateSnapshot(marketstateQueries: string[], quality?: Quality): Observable<MarketstateResponseSearch>;
|
|
81
82
|
/**
|
|
82
|
-
* create a
|
|
83
|
+
* create a market state observable that can be subscribed to, contains only delta for every marketstate
|
|
83
84
|
*/
|
|
84
85
|
marketstateUpdates(marketstateQueries: string[], quality?: Quality): Observable<MarketstateResponseSearch>;
|
|
85
86
|
/**
|
|
86
|
-
* create a
|
|
87
|
+
* create a market state observable that can be subscribed to, contains only full state for every marketstate
|
|
87
88
|
*/
|
|
88
89
|
marketstatesStates(marketstateQueries: string[], quality?: Quality): Observable<MarketstateResponseSearch | undefined>;
|
|
89
90
|
/**
|
|
@@ -115,6 +116,10 @@ export declare class MdsConnection {
|
|
|
115
116
|
* Returns the Open-High-Low-Close Timeseries for the specified Instrument on the Source.
|
|
116
117
|
* */
|
|
117
118
|
timeseriesBidAskSnapshot(marketstateId: string, resolution: Resolution, start?: Date | string, end?: Date | string, quality?: Quality): Observable<TimeseriesBidAskData>;
|
|
119
|
+
/**
|
|
120
|
+
* Returns the Orderbook for the specified Marketstate.
|
|
121
|
+
* */
|
|
122
|
+
topflop(listId: string, sourcePriorities: string[], quality: Quality, topSize?: number, flopSize?: number): Observable<TopflopList>;
|
|
118
123
|
private updateExistingMarketstateWithDeltaUpdate;
|
|
119
124
|
private sendAsSoonAsAuthenticationPermits;
|
|
120
125
|
private stayAuthenticated;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdsConnection.d.ts","sourceRoot":"","sources":["../../../src/api/MdsConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"MdsConnection.d.ts","sourceRoot":"","sources":["../../../src/api/MdsConnection.ts"],"names":[],"mappings":"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"}
|