cry-ebus2 3.1.12 → 3.1.13
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/package.json +2 -1
- package/tsconfig.json +1 -1
- package/dist/EbusClientEvents.d.ts +0 -5
- package/dist/EbusClientEvents.d.ts.map +0 -1
- package/dist/EbusClientEvents.js +0 -3
- package/dist/EbusClientEvents.js.map +0 -1
- package/dist/EbusConfiguration.d.ts +0 -17
- package/dist/EbusConfiguration.d.ts.map +0 -1
- package/dist/EbusConfiguration.js +0 -3
- package/dist/EbusConfiguration.js.map +0 -1
- package/dist/EbusReject.d.ts +0 -11
- package/dist/EbusReject.d.ts.map +0 -1
- package/dist/EbusReject.js +0 -16
- package/dist/EbusReject.js.map +0 -1
- package/dist/EbusRejectReason.d.ts +0 -2
- package/dist/EbusRejectReason.d.ts.map +0 -1
- package/dist/EbusRejectReason.js +0 -3
- package/dist/EbusRejectReason.js.map +0 -1
- package/dist/EbusRequestOptions.d.ts +0 -8
- package/dist/EbusRequestOptions.d.ts.map +0 -1
- package/dist/EbusRequestOptions.js +0 -3
- package/dist/EbusRequestOptions.js.map +0 -1
- package/dist/EbusUnpackedResult.d.ts +0 -10
- package/dist/EbusUnpackedResult.d.ts.map +0 -1
- package/dist/EbusUnpackedResult.js +0 -23
- package/dist/EbusUnpackedResult.js.map +0 -1
- package/dist/block.d.ts +0 -2
- package/dist/block.d.ts.map +0 -1
- package/dist/block.js +0 -10
- package/dist/block.js.map +0 -1
- package/dist/broker.d.ts +0 -42
- package/dist/broker.d.ts.map +0 -1
- package/dist/broker.js +0 -292
- package/dist/broker.js.map +0 -1
- package/dist/client.d.ts +0 -2
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -6
- package/dist/client.js.map +0 -1
- package/dist/clientBlocking.d.ts +0 -27
- package/dist/clientBlocking.d.ts.map +0 -1
- package/dist/clientBlocking.js +0 -177
- package/dist/clientBlocking.js.map +0 -1
- package/dist/clientNonBlocking.d.ts +0 -46
- package/dist/clientNonBlocking.d.ts.map +0 -1
- package/dist/clientNonBlocking.js +0 -264
- package/dist/clientNonBlocking.js.map +0 -1
- package/dist/consts.d.ts +0 -3
- package/dist/consts.d.ts.map +0 -1
- package/dist/consts.js +0 -20
- package/dist/consts.js.map +0 -1
- package/dist/deferredPromise.d.ts +0 -36
- package/dist/deferredPromise.d.ts.map +0 -1
- package/dist/deferredPromise.js +0 -59
- package/dist/deferredPromise.js.map +0 -1
- package/dist/delayWorker.d.ts +0 -10
- package/dist/delayWorker.d.ts.map +0 -1
- package/dist/delayWorker.js +0 -21
- package/dist/delayWorker.js.map +0 -1
- package/dist/echoWorker.d.ts +0 -6
- package/dist/echoWorker.d.ts.map +0 -1
- package/dist/echoWorker.js +0 -19
- package/dist/echoWorker.js.map +0 -1
- package/dist/errorWorker.d.ts +0 -11
- package/dist/errorWorker.d.ts.map +0 -1
- package/dist/errorWorker.js +0 -18
- package/dist/errorWorker.js.map +0 -1
- package/dist/index.d.ts +0 -19
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -34
- package/dist/index.js.map +0 -1
- package/dist/loadConfiguration.d.ts +0 -3
- package/dist/loadConfiguration.d.ts.map +0 -1
- package/dist/loadConfiguration.js +0 -13
- package/dist/loadConfiguration.js.map +0 -1
- package/dist/pub.d.ts +0 -11
- package/dist/pub.d.ts.map +0 -1
- package/dist/pub.js +0 -26
- package/dist/pub.js.map +0 -1
- package/dist/rejectWorker.d.ts +0 -11
- package/dist/rejectWorker.d.ts.map +0 -1
- package/dist/rejectWorker.js +0 -18
- package/dist/rejectWorker.js.map +0 -1
- package/dist/run/all.d.ts +0 -2
- package/dist/run/all.d.ts.map +0 -1
- package/dist/run/all.js +0 -15
- package/dist/run/all.js.map +0 -1
- package/dist/run/broker.d.mts +0 -2
- package/dist/run/broker.d.mts.map +0 -1
- package/dist/run/broker.mjs +0 -7
- package/dist/run/broker.mjs.map +0 -1
- package/dist/run/call.d.ts +0 -2
- package/dist/run/call.d.ts.map +0 -1
- package/dist/run/call.js +0 -78
- package/dist/run/call.js.map +0 -1
- package/dist/run/calling.d.ts +0 -2
- package/dist/run/calling.d.ts.map +0 -1
- package/dist/run/calling.js +0 -96
- package/dist/run/calling.js.map +0 -1
- package/dist/run/callingBurst.d.ts +0 -2
- package/dist/run/callingBurst.d.ts.map +0 -1
- package/dist/run/callingBurst.js +0 -43
- package/dist/run/callingBurst.js.map +0 -1
- package/dist/run/delay.d.mts +0 -2
- package/dist/run/delay.d.mts.map +0 -1
- package/dist/run/delay.mjs +0 -7
- package/dist/run/delay.mjs.map +0 -1
- package/dist/run/echo.d.mts +0 -2
- package/dist/run/echo.d.mts.map +0 -1
- package/dist/run/echo.mjs +0 -7
- package/dist/run/echo.mjs.map +0 -1
- package/dist/run/error.d.mts +0 -2
- package/dist/run/error.d.mts.map +0 -1
- package/dist/run/error.mjs +0 -7
- package/dist/run/error.mjs.map +0 -1
- package/dist/run/ping.d.mts +0 -2
- package/dist/run/ping.d.mts.map +0 -1
- package/dist/run/ping.mjs +0 -71
- package/dist/run/ping.mjs.map +0 -1
- package/dist/run/pub.d.ts +0 -2
- package/dist/run/pub.d.ts.map +0 -1
- package/dist/run/pub.js +0 -30
- package/dist/run/pub.js.map +0 -1
- package/dist/run/reject.d.ts +0 -2
- package/dist/run/reject.d.ts.map +0 -1
- package/dist/run/reject.js +0 -7
- package/dist/run/reject.js.map +0 -1
- package/dist/run/sub.d.ts +0 -2
- package/dist/run/sub.d.ts.map +0 -1
- package/dist/run/sub.js +0 -93
- package/dist/run/sub.js.map +0 -1
- package/dist/run/termimalCommands.d.ts +0 -33
- package/dist/run/termimalCommands.d.ts.map +0 -1
- package/dist/run/termimalCommands.js +0 -35
- package/dist/run/termimalCommands.js.map +0 -1
- package/dist/run/workers.d.ts +0 -2
- package/dist/run/workers.d.ts.map +0 -1
- package/dist/run/workers.js +0 -38
- package/dist/run/workers.js.map +0 -1
- package/dist/serialize.d.ts +0 -4
- package/dist/serialize.d.ts.map +0 -1
- package/dist/serialize.js +0 -34
- package/dist/serialize.js.map +0 -1
- package/dist/service.d.ts +0 -23
- package/dist/service.d.ts.map +0 -1
- package/dist/service.js +0 -112
- package/dist/service.js.map +0 -1
- package/dist/sleep.d.ts +0 -2
- package/dist/sleep.d.ts.map +0 -1
- package/dist/sleep.js +0 -10
- package/dist/sleep.js.map +0 -1
- package/dist/sub.d.ts +0 -24
- package/dist/sub.d.ts.map +0 -1
- package/dist/sub.js +0 -72
- package/dist/sub.js.map +0 -1
- package/dist/test/config.d.ts +0 -2
- package/dist/test/config.d.ts.map +0 -1
- package/dist/test/config.js +0 -25
- package/dist/test/config.js.map +0 -1
- package/dist/test/echo.d.ts +0 -2
- package/dist/test/echo.d.ts.map +0 -1
- package/dist/test/echo.js +0 -56
- package/dist/test/echo.js.map +0 -1
- package/dist/test/index.d.ts +0 -1
- package/dist/test/index.d.ts.map +0 -1
- package/dist/test/index.js +0 -47
- package/dist/test/index.js.map +0 -1
- package/dist/test/pack.d.ts +0 -2
- package/dist/test/pack.d.ts.map +0 -1
- package/dist/test/pack.js +0 -1446
- package/dist/test/pack.js.map +0 -1
- package/dist/test/performance.d.ts +0 -2
- package/dist/test/performance.d.ts.map +0 -1
- package/dist/test/performance.js +0 -46
- package/dist/test/performance.js.map +0 -1
- package/dist/test/pub.d.ts +0 -2
- package/dist/test/pub.d.ts.map +0 -1
- package/dist/test/pub.js +0 -59
- package/dist/test/pub.js.map +0 -1
- package/dist/test/pub2.d.ts +0 -2
- package/dist/test/pub2.d.ts.map +0 -1
- package/dist/test/pub2.js +0 -25
- package/dist/test/pub2.js.map +0 -1
- package/dist/test/reject.d.ts +0 -2
- package/dist/test/reject.d.ts.map +0 -1
- package/dist/test/reject.js +0 -35
- package/dist/test/reject.js.map +0 -1
- package/dist/test/services.d.ts +0 -2
- package/dist/test/services.d.ts.map +0 -1
- package/dist/test/services.js +0 -46
- package/dist/test/services.js.map +0 -1
- package/dist/test/stress.d.ts +0 -2
- package/dist/test/stress.d.ts.map +0 -1
- package/dist/test/stress.js +0 -28
- package/dist/test/stress.js.map +0 -1
- package/dist/test/timing.d.ts +0 -2
- package/dist/test/timing.d.ts.map +0 -1
- package/dist/test/timing.js +0 -70
- package/dist/test/timing.js.map +0 -1
- package/dist/types.d.ts +0 -23
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -28
- package/dist/types.js.map +0 -1
- package/dist/worker.d.ts +0 -27
- package/dist/worker.d.ts.map +0 -1
- package/dist/worker.js +0 -223
- package/dist/worker.js.map +0 -1
package/dist/clientBlocking.js
DELETED
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ClientBlocking = void 0;
|
|
4
|
-
1;
|
|
5
|
-
const cry_helpers_1 = require("cry-helpers");
|
|
6
|
-
const zeromq_1 = require("zeromq");
|
|
7
|
-
const loadConfiguration_js_1 = require("./loadConfiguration.js");
|
|
8
|
-
const types_js_1 = require("./types.js");
|
|
9
|
-
const serialize_js_1 = require("./serialize.js");
|
|
10
|
-
const EbusReject_js_1 = require("./EbusReject.js");
|
|
11
|
-
const EbusUnpackedResult_js_1 = require("./EbusUnpackedResult.js");
|
|
12
|
-
const tiny_typed_emitter_1 = require("tiny-typed-emitter");
|
|
13
|
-
const prefixes = ["EBUS_CLIENT", "EBUS"];
|
|
14
|
-
let log = new cry_helpers_1.Log(prefixes);
|
|
15
|
-
/**
|
|
16
|
-
* ebus client, works one request at the time
|
|
17
|
-
* if broker is offline, each request is blocked until timeout runs out
|
|
18
|
-
*/
|
|
19
|
-
class ClientBlocking extends tiny_typed_emitter_1.TypedEmitter {
|
|
20
|
-
constructor(config = {}) {
|
|
21
|
-
super();
|
|
22
|
-
this.configuration = (0, loadConfiguration_js_1.loadConfiguration)(prefixes, config);
|
|
23
|
-
if (this.configuration.clientChecksBrokerWithHeartbeat)
|
|
24
|
-
this.startHeartbeat();
|
|
25
|
-
this.ebusOnline = false;
|
|
26
|
-
this.requestId = 0;
|
|
27
|
-
}
|
|
28
|
-
online() {
|
|
29
|
-
return this.ebusOnline;
|
|
30
|
-
}
|
|
31
|
-
async publish(channel, message) {
|
|
32
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
33
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
34
|
-
await socket.connect(this.configuration.address);
|
|
35
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Publish, channel, (0, serialize_js_1.pack)(message, {})]);
|
|
36
|
-
try {
|
|
37
|
-
if (!socket.closed)
|
|
38
|
-
socket.close();
|
|
39
|
-
}
|
|
40
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
41
|
-
}
|
|
42
|
-
async services() {
|
|
43
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
44
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
45
|
-
await socket.connect(this.configuration.address);
|
|
46
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Services]);
|
|
47
|
-
log.debug(`ebus client requested services with receiveTimeout ${receiveTimeout}`);
|
|
48
|
-
const [blank, header, services] = await socket.receive();
|
|
49
|
-
try {
|
|
50
|
-
if (!socket.closed)
|
|
51
|
-
socket.close();
|
|
52
|
-
}
|
|
53
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
54
|
-
return cry_helpers_1.serialize.unpack(services);
|
|
55
|
-
}
|
|
56
|
-
async subscribe(channel, message) {
|
|
57
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
58
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
59
|
-
await socket.connect(this.configuration.address);
|
|
60
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Services]);
|
|
61
|
-
log.debug(`ebus client requested services with receiveTimeout ${receiveTimeout}`);
|
|
62
|
-
const [blank, header, services] = await socket.receive();
|
|
63
|
-
try {
|
|
64
|
-
if (!socket.closed)
|
|
65
|
-
socket.close();
|
|
66
|
-
}
|
|
67
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
68
|
-
return cry_helpers_1.serialize.unpack(services);
|
|
69
|
-
}
|
|
70
|
-
async workers() {
|
|
71
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
72
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
73
|
-
await socket.connect(this.configuration.address);
|
|
74
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Workers]);
|
|
75
|
-
log.debug(`ebus client requested workers with receiveTimeout ${receiveTimeout}`);
|
|
76
|
-
const [blank, header, workers] = await socket.receive();
|
|
77
|
-
try {
|
|
78
|
-
if (!socket.closed)
|
|
79
|
-
socket.close();
|
|
80
|
-
}
|
|
81
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
82
|
-
return cry_helpers_1.serialize.unpack(workers);
|
|
83
|
-
}
|
|
84
|
-
async request(service, req, reqOpts = {}) {
|
|
85
|
-
let { data, opts, type } = await this._request(service, req, reqOpts);
|
|
86
|
-
switch (type && type.toString()) {
|
|
87
|
-
case types_js_1.Message.Timeout:
|
|
88
|
-
case types_js_1.Message.Reject:
|
|
89
|
-
case types_js_1.Message.Error:
|
|
90
|
-
this.lastError = (0, serialize_js_1.unpack)(data, opts);
|
|
91
|
-
return undefined;
|
|
92
|
-
case types_js_1.Message.Reply:
|
|
93
|
-
return (0, serialize_js_1.unpack)(data, opts);
|
|
94
|
-
}
|
|
95
|
-
return undefined;
|
|
96
|
-
}
|
|
97
|
-
async requestUpacked(service, req, reqOpts) {
|
|
98
|
-
let { data, opts, type } = await this._request(service, req, reqOpts);
|
|
99
|
-
return new EbusUnpackedResult_js_1.EbusUnpackedResult(data, opts, type);
|
|
100
|
-
}
|
|
101
|
-
async _request(service, req, opts) {
|
|
102
|
-
let receiveTimeout = opts.receiveTimeout || this.configuration.receiveTimeout;
|
|
103
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
104
|
-
await socket.connect(this.configuration.address);
|
|
105
|
-
log.debug(`ebus client requesting '${req}' from '${service}' with reqId ${this.requestId + 1}, receiveTimeout ${receiveTimeout}`);
|
|
106
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Request, service, ++this.requestId, cry_helpers_1.serialize.pack(opts), (0, serialize_js_1.pack)(req, opts)]);
|
|
107
|
-
try {
|
|
108
|
-
const [blank, type, returnRequestId, optsBuff, res] = await socket.receive();
|
|
109
|
-
log.debug(`ebus client received response for reqId ${returnRequestId} of `, type);
|
|
110
|
-
try {
|
|
111
|
-
if (!socket.closed)
|
|
112
|
-
socket.close();
|
|
113
|
-
}
|
|
114
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
115
|
-
let opts = cry_helpers_1.serialize.unpack(optsBuff);
|
|
116
|
-
return { data: res, opts, type };
|
|
117
|
-
}
|
|
118
|
-
catch (err) {
|
|
119
|
-
log.warn(`request expired at client waiting for '${service}' after ${receiveTimeout} ms`);
|
|
120
|
-
this.lastError = new EbusReject_js_1.EbusRejectError("timeout", `timeout in client requesting '${service}' after ${receiveTimeout} ms`);
|
|
121
|
-
}
|
|
122
|
-
try {
|
|
123
|
-
if (!socket.closed)
|
|
124
|
-
socket.close();
|
|
125
|
-
}
|
|
126
|
-
catch ( /* intentional */_b) { /* intentional */ }
|
|
127
|
-
return { data: undefined, opts: {}, type: Buffer.from([0]) };
|
|
128
|
-
}
|
|
129
|
-
startHeartbeat() {
|
|
130
|
-
let receiveTimeout = this.configuration.heartbeatTimeout;
|
|
131
|
-
let socket;
|
|
132
|
-
setInterval(async () => {
|
|
133
|
-
try {
|
|
134
|
-
if (!socket) {
|
|
135
|
-
log.status("client connected new heartbeat socket");
|
|
136
|
-
socket = new zeromq_1.Request({ receiveTimeout });
|
|
137
|
-
await socket.connect(this.configuration.address);
|
|
138
|
-
}
|
|
139
|
-
try {
|
|
140
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Heartbeat]);
|
|
141
|
-
await socket.receive();
|
|
142
|
-
if (!this.ebusOnline) {
|
|
143
|
-
this.ebusOnline = true;
|
|
144
|
-
log.status("client noted ebus/start");
|
|
145
|
-
this.emit("ebus/start");
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
catch (err) {
|
|
149
|
-
if (this.ebusOnline) {
|
|
150
|
-
this.ebusOnline = false;
|
|
151
|
-
log.status("client noted ebus/stop");
|
|
152
|
-
this.emit("ebus/stop");
|
|
153
|
-
}
|
|
154
|
-
try {
|
|
155
|
-
if (socket && !socket.closed)
|
|
156
|
-
socket.close();
|
|
157
|
-
}
|
|
158
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
159
|
-
socket = undefined;
|
|
160
|
-
}
|
|
161
|
-
//try { if (!socket.closed) socket.close() } catch { /* intentional */ }
|
|
162
|
-
}
|
|
163
|
-
catch (err) {
|
|
164
|
-
log.error("client heartbeat error");
|
|
165
|
-
log.error(err);
|
|
166
|
-
try {
|
|
167
|
-
if (socket && !socket.closed)
|
|
168
|
-
socket.close();
|
|
169
|
-
}
|
|
170
|
-
catch ( /* intentional */_b) { /* intentional */ }
|
|
171
|
-
socket = undefined;
|
|
172
|
-
}
|
|
173
|
-
}, this.configuration.heartbeatInterval);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
exports.ClientBlocking = ClientBlocking;
|
|
177
|
-
//# sourceMappingURL=clientBlocking.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clientBlocking.js","sourceRoot":"","sources":["../src/clientBlocking.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { Request } from "zeromq";
|
|
2
|
-
import { EbusConfiguration } from "./EbusConfiguration.js";
|
|
3
|
-
import { EbusRequestOptions } from "./EbusRequestOptions.js";
|
|
4
|
-
import { EbusRejectError } from "./EbusReject.js";
|
|
5
|
-
import { EbusUnpackedResult } from "./EbusUnpackedResult.js";
|
|
6
|
-
import { EbusClientEvents } from "./EbusClientEvents.js";
|
|
7
|
-
import DeferredPromise from "./deferredPromise.js";
|
|
8
|
-
import { TypedEmitter } from 'tiny-typed-emitter';
|
|
9
|
-
declare class RequestPromise extends DeferredPromise<any> {
|
|
10
|
-
requestId: number;
|
|
11
|
-
constructor(requestId: number);
|
|
12
|
-
}
|
|
13
|
-
export declare class ClientNonBlocking extends TypedEmitter<EbusClientEvents> {
|
|
14
|
-
configuration: EbusConfiguration;
|
|
15
|
-
private _lastError?;
|
|
16
|
-
get lastError(): EbusRejectError | undefined;
|
|
17
|
-
set lastError(value: EbusRejectError | undefined);
|
|
18
|
-
ebusOnline: boolean;
|
|
19
|
-
requestId: number;
|
|
20
|
-
requests: Map<number, [promise: RequestPromise, until: number, requestId: number, service: string, socked: Request | undefined]>;
|
|
21
|
-
constructor(config?: Partial<EbusConfiguration>);
|
|
22
|
-
publish(channel: string, message: any): Promise<void>;
|
|
23
|
-
services(): Promise<any>;
|
|
24
|
-
restartAllWorkers(whom: string): Promise<void>;
|
|
25
|
-
workers(): Promise<any>;
|
|
26
|
-
/**
|
|
27
|
-
* @deprecated since version 2.0
|
|
28
|
-
* @param service
|
|
29
|
-
* @param req
|
|
30
|
-
* @param rid - not used
|
|
31
|
-
* @param receiveTimeout
|
|
32
|
-
*/
|
|
33
|
-
requestPromise(service: string, req: any, rid: string, receiveTimeout: number): Promise<{
|
|
34
|
-
data: any;
|
|
35
|
-
rid: string;
|
|
36
|
-
}>;
|
|
37
|
-
request<T>(service: string, req: any, reqOpts?: Partial<EbusRequestOptions>): Promise<T | undefined>;
|
|
38
|
-
requestUpacked<T>(service: string, req: any, reqOpts: Partial<EbusRequestOptions>): Promise<EbusUnpackedResult<T> | undefined>;
|
|
39
|
-
private transformPackedRequestResult;
|
|
40
|
-
private transformUnpackedRequestResult;
|
|
41
|
-
private _request;
|
|
42
|
-
private deleteRequestsThatWereTimeouted;
|
|
43
|
-
private startHeartbeat;
|
|
44
|
-
}
|
|
45
|
-
export {};
|
|
46
|
-
//# sourceMappingURL=clientNonBlocking.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clientNonBlocking.d.ts","sourceRoot":"","sources":["../src/clientNonBlocking.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAI5D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQlD,cAAM,cAAe,SAAQ,eAAe,CAAC,GAAG,CAAC;IAC7C,SAAS,EAAE,MAAM,CAAA;gBACL,SAAS,EAAE,MAAM;CAIhC;AAED,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;IAEjE,aAAa,EAAE,iBAAiB,CAAA;IAChC,OAAO,CAAC,UAAU,CAAC,CAA6B;IAChD,IAAW,SAAS,IAAI,eAAe,GAAG,SAAS,CAElD;IACD,IAAW,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,EAEtD;IACD,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAC,SAAS,CAAC,CAAC,CAAA;gBAElH,MAAM,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAS7C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;IASrC,QAAQ;IAWR,iBAAiB,CAAC,IAAI,EAAC,MAAM;IAQ7B,OAAO;IAYb;;;;;;OAMG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;;;;IAM7E,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAC/E,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAYtB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACnF,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAY9C,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,8BAA8B;YAMxB,QAAQ;IAqEtB,OAAO,CAAC,+BAA+B;IAmBvC,OAAO,CAAC,cAAc;CAyCzB"}
|
|
@@ -1,264 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ClientNonBlocking = void 0;
|
|
7
|
-
const cry_helpers_1 = require("cry-helpers");
|
|
8
|
-
const zeromq_1 = require("zeromq");
|
|
9
|
-
const loadConfiguration_js_1 = require("./loadConfiguration.js");
|
|
10
|
-
const types_js_1 = require("./types.js");
|
|
11
|
-
const serialize_js_1 = require("./serialize.js");
|
|
12
|
-
const EbusReject_js_1 = require("./EbusReject.js");
|
|
13
|
-
const EbusUnpackedResult_js_1 = require("./EbusUnpackedResult.js");
|
|
14
|
-
const deferredPromise_js_1 = __importDefault(require("./deferredPromise.js"));
|
|
15
|
-
const tiny_typed_emitter_1 = require("tiny-typed-emitter");
|
|
16
|
-
const prefixes = ["EBUS_CLIENT", "EBUS"];
|
|
17
|
-
let log = new cry_helpers_1.Log(prefixes);
|
|
18
|
-
class RequestPromise extends deferredPromise_js_1.default {
|
|
19
|
-
constructor(requestId) {
|
|
20
|
-
super();
|
|
21
|
-
this.requestId = requestId;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
class ClientNonBlocking extends tiny_typed_emitter_1.TypedEmitter {
|
|
25
|
-
constructor(config = {}) {
|
|
26
|
-
super();
|
|
27
|
-
this.configuration = (0, loadConfiguration_js_1.loadConfiguration)(prefixes, config);
|
|
28
|
-
if (this.configuration.clientChecksBrokerWithHeartbeat)
|
|
29
|
-
this.startHeartbeat();
|
|
30
|
-
this.ebusOnline = false;
|
|
31
|
-
this.requestId = 0;
|
|
32
|
-
this.requests = new Map();
|
|
33
|
-
}
|
|
34
|
-
get lastError() {
|
|
35
|
-
return this._lastError;
|
|
36
|
-
}
|
|
37
|
-
set lastError(value) {
|
|
38
|
-
this._lastError = value;
|
|
39
|
-
}
|
|
40
|
-
async publish(channel, message) {
|
|
41
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
42
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
43
|
-
await socket.connect(this.configuration.address);
|
|
44
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Publish, channel, (0, serialize_js_1.pack)(message, {})]);
|
|
45
|
-
log.debug(`ebus client published on '${channel}'`, message);
|
|
46
|
-
try {
|
|
47
|
-
if (!socket.closed)
|
|
48
|
-
socket.close();
|
|
49
|
-
}
|
|
50
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
51
|
-
}
|
|
52
|
-
async services() {
|
|
53
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
54
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
55
|
-
await socket.connect(this.configuration.address);
|
|
56
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Services]);
|
|
57
|
-
log.debug(`ebus client requested services with receiveTimeout ${receiveTimeout}`);
|
|
58
|
-
const [blank, header, services] = await socket.receive();
|
|
59
|
-
try {
|
|
60
|
-
if (!socket.closed)
|
|
61
|
-
socket.close();
|
|
62
|
-
}
|
|
63
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
64
|
-
return cry_helpers_1.serialize.unpack(services);
|
|
65
|
-
}
|
|
66
|
-
async restartAllWorkers(whom) {
|
|
67
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
68
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
69
|
-
await socket.connect(this.configuration.address);
|
|
70
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.RestartAllWorkers, whom]);
|
|
71
|
-
log.debug(`ebus client requested restart ${whom} workers with receiveTimeout ${receiveTimeout}`);
|
|
72
|
-
}
|
|
73
|
-
async workers() {
|
|
74
|
-
let receiveTimeout = this.configuration.receiveTimeout;
|
|
75
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
76
|
-
await socket.connect(this.configuration.address);
|
|
77
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Workers]);
|
|
78
|
-
log.debug(`ebus client requested workers with receiveTimeout ${receiveTimeout}`);
|
|
79
|
-
const [blank, header, workers] = await socket.receive();
|
|
80
|
-
try {
|
|
81
|
-
if (!socket.closed)
|
|
82
|
-
socket.close();
|
|
83
|
-
}
|
|
84
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
85
|
-
return cry_helpers_1.serialize.unpack(workers);
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* @deprecated since version 2.0
|
|
89
|
-
* @param service
|
|
90
|
-
* @param req
|
|
91
|
-
* @param rid - not used
|
|
92
|
-
* @param receiveTimeout
|
|
93
|
-
*/
|
|
94
|
-
async requestPromise(service, req, rid, receiveTimeout) {
|
|
95
|
-
let data = await this.request(service, req, { receiveTimeout });
|
|
96
|
-
log.debug("ebusClient returns from requestPromise", { rid, data });
|
|
97
|
-
return { data, rid };
|
|
98
|
-
}
|
|
99
|
-
async request(service, req, reqOpts = {}) {
|
|
100
|
-
if (this.requests.size > this.configuration.requestQueueSizeLimit) {
|
|
101
|
-
this.lastError = new EbusReject_js_1.EbusRejectError("error", "too many waiting request at client");
|
|
102
|
-
return undefined;
|
|
103
|
-
}
|
|
104
|
-
let ret = this._request(service, req, reqOpts, this.transformPackedRequestResult);
|
|
105
|
-
log.debug("ebuClient returns from request", ret, "using opts", reqOpts);
|
|
106
|
-
return ret;
|
|
107
|
-
}
|
|
108
|
-
async requestUpacked(service, req, reqOpts) {
|
|
109
|
-
if (this.requests.size > this.configuration.requestQueueSizeLimit) {
|
|
110
|
-
this.lastError = new EbusReject_js_1.EbusRejectError("error", "too many waiting request at client");
|
|
111
|
-
return undefined;
|
|
112
|
-
}
|
|
113
|
-
let ret = this._request(service, req, reqOpts, this.transformUnpackedRequestResult);
|
|
114
|
-
log.debug("ebusClient return from requestUpacked", ret);
|
|
115
|
-
return ret;
|
|
116
|
-
}
|
|
117
|
-
transformPackedRequestResult({ data, opts, type }) {
|
|
118
|
-
switch (type && type.toString()) {
|
|
119
|
-
case types_js_1.Message.Timeout:
|
|
120
|
-
case types_js_1.Message.Reject:
|
|
121
|
-
case types_js_1.Message.Error:
|
|
122
|
-
this.lastError = (0, serialize_js_1.unpack)(data, opts) || this.lastError;
|
|
123
|
-
return undefined;
|
|
124
|
-
case types_js_1.Message.Reply:
|
|
125
|
-
return (0, serialize_js_1.unpack)(data, opts);
|
|
126
|
-
}
|
|
127
|
-
this.lastError =
|
|
128
|
-
new EbusReject_js_1.EbusRejectError("error", "error post-processing returned result", { data, opts, type });
|
|
129
|
-
return undefined;
|
|
130
|
-
}
|
|
131
|
-
transformUnpackedRequestResult({ data, opts, type }) {
|
|
132
|
-
return new EbusUnpackedResult_js_1.EbusUnpackedResult(data, opts, type);
|
|
133
|
-
}
|
|
134
|
-
async _request(service, req, opts, processResult) {
|
|
135
|
-
this.lastError = undefined;
|
|
136
|
-
let receiveTimeout = opts.receiveTimeout || this.configuration.receiveTimeout;
|
|
137
|
-
let socket = new zeromq_1.Request({ receiveTimeout });
|
|
138
|
-
await socket.connect(this.configuration.address);
|
|
139
|
-
let reqId = ++this.requestId;
|
|
140
|
-
let packedRequest = (0, serialize_js_1.pack)(req, opts);
|
|
141
|
-
delete opts.prepacked;
|
|
142
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Request, service, reqId.toString(), cry_helpers_1.serialize.pack(opts), packedRequest]);
|
|
143
|
-
log.debug(`ebus client requesting '${req}' from '${service}' with reqId ${this.requestId + 1}, receiveTimeout ${receiveTimeout}`);
|
|
144
|
-
let promise = new RequestPromise(reqId);
|
|
145
|
-
this.requests.set(reqId, [promise, new Date().valueOf() + receiveTimeout, reqId, service, socket]);
|
|
146
|
-
try {
|
|
147
|
-
socket.receive()
|
|
148
|
-
.then(async ([blank, type, returnRequestId, optsBuff, res]) => {
|
|
149
|
-
log.debug(`ebus client received response for reqId ${returnRequestId} of `, type);
|
|
150
|
-
let opts = cry_helpers_1.serialize.unpack(optsBuff);
|
|
151
|
-
let toReturn = { data: res, opts, type };
|
|
152
|
-
let newReqId = parseInt(returnRequestId.toString());
|
|
153
|
-
if (reqId !== newReqId) {
|
|
154
|
-
log.error(`client received reqId ${newReqId} instead of ${reqId}`);
|
|
155
|
-
}
|
|
156
|
-
let storedRequest = this.requests.get(newReqId);
|
|
157
|
-
if (!storedRequest) {
|
|
158
|
-
log.error(`client can't locate request with id ${newReqId}`);
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
this.requests.delete(newReqId);
|
|
162
|
-
storedRequest[0].resolve(processResult.bind(this)(toReturn));
|
|
163
|
-
}
|
|
164
|
-
})
|
|
165
|
-
.catch(err => {
|
|
166
|
-
if ((err === null || err === void 0 ? void 0 : err.errno) === 35) {
|
|
167
|
-
this.lastError = new EbusReject_js_1.EbusRejectError("timeout", `timeout in client requesting '${service}' after ${receiveTimeout} ms`);
|
|
168
|
-
log.debug(`request expired at client waiting for '${service}' after ${receiveTimeout} ms`, req);
|
|
169
|
-
let processed = processResult.bind(this)({ data: undefined, opts: {}, type: Buffer.from(types_js_1.Message.Timeout) });
|
|
170
|
-
promise.resolve(processed);
|
|
171
|
-
}
|
|
172
|
-
else {
|
|
173
|
-
this.lastError = new EbusReject_js_1.EbusRejectError("error", `error in client requesting '${service}' after ${receiveTimeout} ms`);
|
|
174
|
-
log.debug(`request errored at client waiting for '${service}' after ${receiveTimeout} ms`, req);
|
|
175
|
-
let processed = processResult.bind(this)({ data: undefined, opts: {}, type: Buffer.from(types_js_1.Message.Error) });
|
|
176
|
-
promise.resolve(processed);
|
|
177
|
-
}
|
|
178
|
-
this.requests.delete(reqId);
|
|
179
|
-
})
|
|
180
|
-
.finally(() => {
|
|
181
|
-
try {
|
|
182
|
-
if (!socket.closed)
|
|
183
|
-
socket.close();
|
|
184
|
-
}
|
|
185
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
catch (err) {
|
|
189
|
-
log.error("client error that should have been caught");
|
|
190
|
-
log.error(err);
|
|
191
|
-
}
|
|
192
|
-
this.deleteRequestsThatWereTimeouted();
|
|
193
|
-
return promise;
|
|
194
|
-
}
|
|
195
|
-
deleteRequestsThatWereTimeouted() {
|
|
196
|
-
let now = new Date().valueOf();
|
|
197
|
-
for (let requestRecord of this.requests) {
|
|
198
|
-
if (requestRecord[1][1] <= now) {
|
|
199
|
-
this.lastError = new EbusReject_js_1.EbusRejectError("timeout", `timeout in client requesting '${requestRecord[1][3]}' during cleanup`);
|
|
200
|
-
log.error(`client timouted request id ${requestRecord[1][2]} for ${requestRecord[1][3]} that should have been removed from rejected promise after ${requestRecord[1][2]}} ms `);
|
|
201
|
-
this.requests.delete(requestRecord[0]);
|
|
202
|
-
let promise = requestRecord[1][0];
|
|
203
|
-
// close socked and remove refenece to it
|
|
204
|
-
if (requestRecord[1][4]) {
|
|
205
|
-
try {
|
|
206
|
-
if (!requestRecord[1][4].closed)
|
|
207
|
-
requestRecord[1][4].close();
|
|
208
|
-
}
|
|
209
|
-
catch ( /*intentional*/_a) { /*intentional*/ }
|
|
210
|
-
requestRecord[1][4] = undefined;
|
|
211
|
-
}
|
|
212
|
-
// resolve and return
|
|
213
|
-
promise.resolve({ data: undefined, opts: {}, type: Buffer.from([0]) });
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
startHeartbeat() {
|
|
218
|
-
let receiveTimeout = this.configuration.heartbeatTimeout;
|
|
219
|
-
let socket;
|
|
220
|
-
setInterval(async () => {
|
|
221
|
-
try {
|
|
222
|
-
if (!socket) {
|
|
223
|
-
log.status("client connected new heartbeat socket");
|
|
224
|
-
socket = new zeromq_1.Request({ receiveTimeout });
|
|
225
|
-
await socket.connect(this.configuration.address);
|
|
226
|
-
}
|
|
227
|
-
try {
|
|
228
|
-
await socket.send([types_js_1.Header.Client, types_js_1.Message.Heartbeat]);
|
|
229
|
-
await socket.receive();
|
|
230
|
-
if (!this.ebusOnline) {
|
|
231
|
-
this.ebusOnline = true;
|
|
232
|
-
log.status("client noted ebus/start");
|
|
233
|
-
this.emit("ebus/start");
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
catch (err) {
|
|
237
|
-
if (this.ebusOnline) {
|
|
238
|
-
this.ebusOnline = false;
|
|
239
|
-
log.status("client noted ebus/stop");
|
|
240
|
-
this.emit("ebus/stop");
|
|
241
|
-
}
|
|
242
|
-
try {
|
|
243
|
-
if (socket && !socket.closed)
|
|
244
|
-
socket.close();
|
|
245
|
-
}
|
|
246
|
-
catch ( /* intentional */_a) { /* intentional */ }
|
|
247
|
-
socket = undefined;
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
catch (err) {
|
|
251
|
-
log.error("client heartbeat error");
|
|
252
|
-
log.error(err);
|
|
253
|
-
try {
|
|
254
|
-
if (socket && !socket.closed)
|
|
255
|
-
socket.close();
|
|
256
|
-
}
|
|
257
|
-
catch ( /* intentional */_b) { /* intentional */ }
|
|
258
|
-
socket = undefined;
|
|
259
|
-
}
|
|
260
|
-
}, this.configuration.heartbeatInterval);
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
exports.ClientNonBlocking = ClientNonBlocking;
|
|
264
|
-
//# sourceMappingURL=clientNonBlocking.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clientNonBlocking.js","sourceRoot":"","sources":["../src/clientNonBlocking.ts"],"names":[],"mappings":"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"}
|
package/dist/consts.d.ts
DELETED
package/dist/consts.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,eAAO,MAAM,QAAQ,EAAE,iBAetB,CAAA"}
|
package/dist/consts.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaults = void 0;
|
|
4
|
-
exports.defaults = {
|
|
5
|
-
sendHighWaterMark: 1,
|
|
6
|
-
sendTimeout: 1,
|
|
7
|
-
port: 5555,
|
|
8
|
-
pubPort: 5556,
|
|
9
|
-
server: 'tcp://127.0.0.1',
|
|
10
|
-
address: null,
|
|
11
|
-
pubAddress: null,
|
|
12
|
-
receiveTimeout: 2000,
|
|
13
|
-
heartbeatInterval: 400,
|
|
14
|
-
heartbeatTimeout: 10000,
|
|
15
|
-
brokerHeartbeatTimeout: 15000,
|
|
16
|
-
clientChecksBrokerWithHeartbeat: true,
|
|
17
|
-
brokerChecksWorkersWithHeartbeat: true,
|
|
18
|
-
requestQueueSizeLimit: 500,
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=consts.js.map
|
package/dist/consts.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":";;;AAEa,QAAA,QAAQ,GAAsB;IACvC,iBAAiB,EAAE,CAAC;IACpB,WAAW,EAAE,CAAC;IACd,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,iBAAiB;IACzB,OAAO,EAAE,IAAW;IACpB,UAAU,EAAE,IAAW;IACvB,cAAc,EAAE,IAAI;IACpB,iBAAiB,EAAE,GAAG;IACtB,gBAAgB,EAAE,KAAK;IACvB,sBAAsB,EAAE,KAAK;IAC7B,+BAA+B,EAAE,IAAI;IACrC,gCAAgC,EAAE,IAAI;IACtC,qBAAqB,EAAE,GAAG;CAC7B,CAAA"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A new instance of deferred is constructed by calling `new DeferredPromse<T>()`.
|
|
3
|
-
* The purpose of the deferred object is to expose the associated Promise
|
|
4
|
-
* instance APIs that can be used for signaling the successful
|
|
5
|
-
* or unsuccessful completion, as well as the state of the task.
|
|
6
|
-
* @export
|
|
7
|
-
* @class DeferredPromise
|
|
8
|
-
* @implements {Promise<T>}
|
|
9
|
-
* @template T
|
|
10
|
-
* @example
|
|
11
|
-
* const deferred = new DeferredPromse<string>();
|
|
12
|
-
* console.log(deferred.state); // 'pending'
|
|
13
|
-
*
|
|
14
|
-
* deferred
|
|
15
|
-
* .then(str => console.log(str))
|
|
16
|
-
* .catch(err => console.error(err));
|
|
17
|
-
*
|
|
18
|
-
* deferred.resolve('Foo');
|
|
19
|
-
* console.log(deferred.state); // 'fulfilled'
|
|
20
|
-
* // deferred.reject('Bar');
|
|
21
|
-
*/
|
|
22
|
-
export default class DeferredPromise<T> implements Promise<T> {
|
|
23
|
-
[Symbol.toStringTag]: 'Promise';
|
|
24
|
-
private _promise;
|
|
25
|
-
private _resolve;
|
|
26
|
-
private _reject;
|
|
27
|
-
private _state;
|
|
28
|
-
get state(): 'pending' | 'fulfilled' | 'rejected';
|
|
29
|
-
constructor();
|
|
30
|
-
finally(onfinally?: (() => void) | null): Promise<T>;
|
|
31
|
-
then<TResult1, TResult2>(onfulfilled?: (value: T) => TResult1 | PromiseLike<TResult1>, onrejected?: (reason: any) => TResult2 | PromiseLike<TResult2>): Promise<TResult1 | TResult2>;
|
|
32
|
-
catch<TResult>(onrejected?: (reason: any) => TResult | PromiseLike<TResult>): Promise<T | TResult>;
|
|
33
|
-
resolve(value?: T | PromiseLike<T>): void;
|
|
34
|
-
reject(reason?: any): void;
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=deferredPromise.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deferredPromise.d.ts","sourceRoot":"","sources":["../src/deferredPromise.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe,CAAC,CAAC,CAAE,YAAW,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,QAAQ,CAAqD;IACrE,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,MAAM,CAAmD;IAEjE,IAAW,KAAK,IAAI,SAAS,GAAG,WAAW,GAAG,UAAU,CAEvD;;IASM,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpD,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAC1B,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,EAC5D,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,GAC5D,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAI3B,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC;IAIlG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IAMzC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI;CAKpC"}
|