@aws-amplify/pubsub 4.5.11 → 4.5.12-unstable.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/CHANGELOG.md +0 -8
- package/lib/.tsbuildinfo +3 -0
- package/lib/Providers/AWSAppSyncProvider.d.ts +21 -0
- package/lib/Providers/AWSAppSyncProvider.js +20 -102
- package/lib/Providers/AWSAppSyncProvider.js.map +1 -1
- package/lib/Providers/AWSAppSyncRealTimeProvider/index.d.ts +75 -0
- package/lib/Providers/AWSAppSyncRealTimeProvider/index.js +158 -210
- package/lib/Providers/AWSAppSyncRealTimeProvider/index.js.map +1 -1
- package/lib/Providers/AWSIotProvider.d.ts +11 -0
- package/lib/Providers/AWSIotProvider.js +6 -64
- package/lib/Providers/AWSIotProvider.js.map +1 -1
- package/lib/Providers/MqttOverWSProvider.d.ts +41 -0
- package/lib/Providers/MqttOverWSProvider.js +158 -204
- package/lib/Providers/MqttOverWSProvider.js.map +1 -1
- package/lib/Providers/PubSubProvider.d.ts +13 -0
- package/lib/Providers/PubSubProvider.js +3 -13
- package/lib/Providers/PubSubProvider.js.map +1 -1
- package/lib/Providers/constants.d.ts +95 -0
- package/lib/Providers/constants.js +8 -0
- package/lib/Providers/constants.js.map +1 -1
- package/lib/Providers/index.d.ts +5 -0
- package/lib/Providers/index.js +13 -20
- package/lib/Providers/index.js.map +1 -1
- package/lib/PubSub.d.ts +51 -0
- package/lib/PubSub.js +8 -56
- package/lib/PubSub.js.map +1 -1
- package/lib/index.d.ts +4 -0
- package/lib/index.js +9 -20
- package/lib/index.js.map +1 -1
- package/lib/types/Provider.d.ts +14 -0
- package/lib/types/PubSub.d.ts +24 -0
- package/lib/types/PubSub.js +2 -12
- package/lib/types/PubSub.js.map +1 -1
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.js +2 -4
- package/lib/types/index.js.map +1 -1
- package/lib/utils/ConnectionStateMonitor.d.ts +41 -0
- package/lib/utils/ConnectionStateMonitor.js +16 -29
- package/lib/utils/ConnectionStateMonitor.js.map +1 -1
- package/lib/utils/ReachabilityMonitor/index.d.ts +3 -0
- package/lib/utils/ReachabilityMonitor/index.native.d.ts +3 -0
- package/lib/utils/ReachabilityMonitor/index.native.js +2 -4
- package/lib/utils/ReachabilityMonitor/index.native.js.map +1 -1
- package/lib/utils/ReconnectionMonitor.d.ts +29 -0
- package/lib/utils/ReconnectionMonitor.js +73 -0
- package/lib/utils/ReconnectionMonitor.js.map +1 -0
- package/lib-esm/.tsbuildinfo +3 -0
- package/lib-esm/Providers/AWSAppSyncProvider.js +1 -80
- package/lib-esm/Providers/AWSAppSyncProvider.js.map +1 -1
- package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.d.ts +8 -0
- package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.js +126 -168
- package/lib-esm/Providers/AWSAppSyncRealTimeProvider/index.js.map +1 -1
- package/lib-esm/Providers/AWSIotProvider.js +3 -61
- package/lib-esm/Providers/AWSIotProvider.js.map +1 -1
- package/lib-esm/Providers/MqttOverWSProvider.d.ts +2 -4
- package/lib-esm/Providers/MqttOverWSProvider.js +139 -175
- package/lib-esm/Providers/MqttOverWSProvider.js.map +1 -1
- package/lib-esm/Providers/PubSubProvider.js +1 -11
- package/lib-esm/Providers/PubSubProvider.js.map +1 -1
- package/lib-esm/Providers/constants.d.ts +8 -0
- package/lib-esm/Providers/constants.js +8 -0
- package/lib-esm/Providers/constants.js.map +1 -1
- package/lib-esm/Providers/index.d.ts +5 -5
- package/lib-esm/Providers/index.js +7 -17
- package/lib-esm/Providers/index.js.map +1 -1
- package/lib-esm/PubSub.js +3 -48
- package/lib-esm/PubSub.js.map +1 -1
- package/lib-esm/index.d.ts +2 -7
- package/lib-esm/index.js +4 -19
- package/lib-esm/index.js.map +1 -1
- package/lib-esm/types/Provider.d.ts +0 -4
- package/lib-esm/types/PubSub.js +2 -12
- package/lib-esm/types/PubSub.js.map +1 -1
- package/lib-esm/types/index.js.map +1 -1
- package/lib-esm/utils/ConnectionStateMonitor.d.ts +1 -0
- package/lib-esm/utils/ConnectionStateMonitor.js +13 -23
- package/lib-esm/utils/ConnectionStateMonitor.js.map +1 -1
- package/lib-esm/utils/ReconnectionMonitor.d.ts +29 -0
- package/lib-esm/utils/ReconnectionMonitor.js +71 -0
- package/lib-esm/utils/ReconnectionMonitor.js.map +1 -0
- package/package.json +14 -10
- package/src/Providers/AWSAppSyncProvider.ts +2 -12
- package/src/Providers/AWSAppSyncRealTimeProvider/index.ts +142 -89
- package/src/Providers/AWSIotProvider.ts +2 -12
- package/src/Providers/MqttOverWSProvider.ts +90 -79
- package/src/Providers/PubSubProvider.ts +2 -12
- package/src/Providers/constants.ts +10 -0
- package/src/Providers/index.ts +15 -17
- package/src/PubSub.ts +2 -12
- package/src/index.ts +15 -23
- package/src/types/Provider.ts +2 -17
- package/src/types/PubSub.ts +2 -12
- package/src/types/index.ts +2 -12
- package/src/utils/ConnectionStateMonitor.ts +16 -12
- package/src/utils/ReconnectionMonitor.ts +74 -0
- package/build.js +0 -5
- package/dist/aws-amplify-pubsub.js +0 -10314
- package/dist/aws-amplify-pubsub.js.map +0 -1
- package/dist/aws-amplify-pubsub.min.js +0 -11
- package/dist/aws-amplify-pubsub.min.js.map +0 -1
- package/index.js +0 -7
- package/webpack.config.dev.js +0 -6
|
@@ -1,92 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
-
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
6
|
-
return extendStatics(d, b);
|
|
7
|
-
};
|
|
8
|
-
return function (d, b) {
|
|
9
|
-
extendStatics(d, b);
|
|
10
|
-
function __() { this.constructor = d; }
|
|
11
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
12
|
-
};
|
|
13
|
-
})();
|
|
14
|
-
var __assign = (this && this.__assign) || function () {
|
|
15
|
-
__assign = Object.assign || function(t) {
|
|
16
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
17
|
-
s = arguments[i];
|
|
18
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
19
|
-
t[p] = s[p];
|
|
20
|
-
}
|
|
21
|
-
return t;
|
|
22
|
-
};
|
|
23
|
-
return __assign.apply(this, arguments);
|
|
24
|
-
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
35
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
36
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
37
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
38
|
-
function step(op) {
|
|
39
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
40
|
-
while (_) try {
|
|
41
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
42
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
43
|
-
switch (op[0]) {
|
|
44
|
-
case 0: case 1: t = op; break;
|
|
45
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
46
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
47
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
48
|
-
default:
|
|
49
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
50
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
51
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
52
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
53
|
-
if (t[2]) _.ops.pop();
|
|
54
|
-
_.trys.pop(); continue;
|
|
55
|
-
}
|
|
56
|
-
op = body.call(thisArg, _);
|
|
57
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
58
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
62
|
-
var t = {};
|
|
63
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
64
|
-
t[p] = s[p];
|
|
65
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
66
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
67
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
68
|
-
t[p[i]] = s[p[i]];
|
|
69
|
-
}
|
|
70
|
-
return t;
|
|
71
|
-
};
|
|
72
|
-
/*
|
|
73
|
-
* Copyright 2017-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
74
|
-
*
|
|
75
|
-
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
|
|
76
|
-
* the License. A copy of the License is located at
|
|
77
|
-
*
|
|
78
|
-
* http://aws.amazon.com/apache2.0/
|
|
79
|
-
*
|
|
80
|
-
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
81
|
-
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
82
|
-
* and limitations under the License.
|
|
83
|
-
*/
|
|
1
|
+
import { __assign, __awaiter, __extends, __generator, __rest } from "tslib";
|
|
2
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
84
4
|
import * as Paho from 'paho-mqtt';
|
|
85
5
|
import { v4 as uuid } from 'uuid';
|
|
86
6
|
import Observable from 'zen-observable-ts';
|
|
87
7
|
import { AbstractPubSubProvider } from './PubSubProvider';
|
|
8
|
+
import { ConnectionState } from '../types/PubSub';
|
|
88
9
|
import { ConsoleLogger as Logger, Hub } from '@aws-amplify/core';
|
|
89
10
|
import { ConnectionStateMonitor, CONNECTION_CHANGE, } from '../utils/ConnectionStateMonitor';
|
|
11
|
+
import { ReconnectEvent, ReconnectionMonitor, } from '../utils/ReconnectionMonitor';
|
|
90
12
|
import { AMPLIFY_SYMBOL, CONNECTION_STATE_CHANGE } from './constants';
|
|
91
13
|
var logger = new Logger('MqttOverWSProvider');
|
|
92
14
|
export function mqttTopicMatch(filter, topic) {
|
|
@@ -110,14 +32,15 @@ var ClientsQueue = /** @class */ (function () {
|
|
|
110
32
|
ClientsQueue.prototype.get = function (clientId, clientFactory) {
|
|
111
33
|
return __awaiter(this, void 0, void 0, function () {
|
|
112
34
|
var cachedPromise, newPromise;
|
|
35
|
+
var _this = this;
|
|
113
36
|
return __generator(this, function (_a) {
|
|
114
37
|
cachedPromise = this.promises.get(clientId);
|
|
115
|
-
if (cachedPromise)
|
|
38
|
+
if (cachedPromise)
|
|
116
39
|
return [2 /*return*/, cachedPromise];
|
|
117
|
-
}
|
|
118
40
|
if (clientFactory) {
|
|
119
41
|
newPromise = clientFactory(clientId);
|
|
120
42
|
this.promises.set(clientId, newPromise);
|
|
43
|
+
newPromise.catch(function (v) { return _this.promises.delete(clientId); });
|
|
121
44
|
return [2 /*return*/, newPromise];
|
|
122
45
|
}
|
|
123
46
|
return [2 /*return*/, undefined];
|
|
@@ -147,6 +70,7 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
147
70
|
var _this = _super.call(this, __assign(__assign({}, options), { clientId: options.clientId || uuid() })) || this;
|
|
148
71
|
_this._clientsQueue = new ClientsQueue();
|
|
149
72
|
_this.connectionStateMonitor = new ConnectionStateMonitor();
|
|
73
|
+
_this.reconnectionMonitor = new ReconnectionMonitor();
|
|
150
74
|
_this._topicObservers = new Map();
|
|
151
75
|
_this._clientIdObservers = new Map();
|
|
152
76
|
// Monitor the connection health state and pass changes along to Hub
|
|
@@ -155,6 +79,15 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
155
79
|
provider: _this,
|
|
156
80
|
connectionState: connectionStateChange,
|
|
157
81
|
}, "Connection state is " + connectionStateChange);
|
|
82
|
+
_this.connectionState = connectionStateChange;
|
|
83
|
+
// Trigger reconnection when the connection is disrupted
|
|
84
|
+
if (connectionStateChange === ConnectionState.ConnectionDisrupted) {
|
|
85
|
+
_this.reconnectionMonitor.record(ReconnectEvent.START_RECONNECT);
|
|
86
|
+
}
|
|
87
|
+
else if (connectionStateChange !== ConnectionState.Connecting) {
|
|
88
|
+
// Trigger connected to halt reconnection attempts
|
|
89
|
+
_this.reconnectionMonitor.record(ReconnectEvent.HALT_RECONNECT);
|
|
90
|
+
}
|
|
158
91
|
});
|
|
159
92
|
return _this;
|
|
160
93
|
}
|
|
@@ -194,11 +127,9 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
194
127
|
return 'MqttOverWSProvider';
|
|
195
128
|
};
|
|
196
129
|
MqttOverWSProvider.prototype.onDisconnect = function (_a) {
|
|
197
|
-
var _this = this;
|
|
198
130
|
var clientId = _a.clientId, errorCode = _a.errorCode, args = __rest(_a, ["clientId", "errorCode"]);
|
|
199
131
|
if (errorCode !== 0) {
|
|
200
132
|
logger.warn(clientId, JSON.stringify(__assign({ errorCode: errorCode }, args), null, 2));
|
|
201
|
-
var topicsToDelete_1 = [];
|
|
202
133
|
if (!clientId) {
|
|
203
134
|
return;
|
|
204
135
|
}
|
|
@@ -206,28 +137,13 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
206
137
|
if (!clientIdObservers) {
|
|
207
138
|
return;
|
|
208
139
|
}
|
|
209
|
-
|
|
210
|
-
observer.error('Disconnected, error code: ' + errorCode);
|
|
211
|
-
// removing observers for disconnected clientId
|
|
212
|
-
_this._topicObservers.forEach(function (observerForTopic, observerTopic) {
|
|
213
|
-
observerForTopic.delete(observer);
|
|
214
|
-
if (observerForTopic.size === 0) {
|
|
215
|
-
topicsToDelete_1.push(observerTopic);
|
|
216
|
-
}
|
|
217
|
-
});
|
|
218
|
-
});
|
|
219
|
-
// forgiving any trace of clientId
|
|
220
|
-
this._clientIdObservers.delete(clientId);
|
|
221
|
-
// Removing topics that are not listen by an observer
|
|
222
|
-
topicsToDelete_1.forEach(function (topic) {
|
|
223
|
-
_this._topicObservers.delete(topic);
|
|
224
|
-
});
|
|
140
|
+
this.disconnect(clientId);
|
|
225
141
|
}
|
|
226
142
|
};
|
|
227
143
|
MqttOverWSProvider.prototype.newClient = function (_a) {
|
|
228
144
|
var url = _a.url, clientId = _a.clientId;
|
|
229
145
|
return __awaiter(this, void 0, void 0, function () {
|
|
230
|
-
var client;
|
|
146
|
+
var client, connected;
|
|
231
147
|
var _this = this;
|
|
232
148
|
return __generator(this, function (_b) {
|
|
233
149
|
switch (_b.label) {
|
|
@@ -235,7 +151,6 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
235
151
|
logger.debug('Creating new MQTT client', clientId);
|
|
236
152
|
this.connectionStateMonitor.record(CONNECTION_CHANGE.OPENING_CONNECTION);
|
|
237
153
|
client = new Paho.Client(url, clientId);
|
|
238
|
-
// client.trace = (args) => logger.debug(clientId, JSON.stringify(args, null, 2));
|
|
239
154
|
client.onMessageArrived = function (_a) {
|
|
240
155
|
var topic = _a.destinationName, msg = _a.payloadString;
|
|
241
156
|
_this._onMessage(topic, msg);
|
|
@@ -249,16 +164,20 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
249
164
|
client.connect({
|
|
250
165
|
useSSL: _this.isSSLEnabled,
|
|
251
166
|
mqttVersion: 3,
|
|
252
|
-
onSuccess: function () { return resolve(
|
|
253
|
-
onFailure: function () {
|
|
254
|
-
|
|
255
|
-
|
|
167
|
+
onSuccess: function () { return resolve(true); },
|
|
168
|
+
onFailure: function (x) {
|
|
169
|
+
if (clientId)
|
|
170
|
+
_this._clientsQueue.remove(clientId);
|
|
171
|
+
_this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);
|
|
172
|
+
resolve(false);
|
|
256
173
|
},
|
|
257
174
|
});
|
|
258
175
|
})];
|
|
259
176
|
case 1:
|
|
260
|
-
_b.sent();
|
|
261
|
-
|
|
177
|
+
connected = _b.sent();
|
|
178
|
+
if (connected) {
|
|
179
|
+
this.connectionStateMonitor.record(CONNECTION_CHANGE.CONNECTION_ESTABLISHED);
|
|
180
|
+
}
|
|
262
181
|
return [2 /*return*/, client];
|
|
263
182
|
}
|
|
264
183
|
});
|
|
@@ -270,9 +189,23 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
270
189
|
var _this = this;
|
|
271
190
|
return __generator(this, function (_a) {
|
|
272
191
|
switch (_a.label) {
|
|
273
|
-
case 0: return [4 /*yield*/, this.clientsQueue.get(clientId, function (clientId) {
|
|
274
|
-
|
|
275
|
-
|
|
192
|
+
case 0: return [4 /*yield*/, this.clientsQueue.get(clientId, function (clientId) { return __awaiter(_this, void 0, void 0, function () {
|
|
193
|
+
var client;
|
|
194
|
+
return __generator(this, function (_a) {
|
|
195
|
+
switch (_a.label) {
|
|
196
|
+
case 0: return [4 /*yield*/, this.newClient(__assign(__assign({}, options), { clientId: clientId }))];
|
|
197
|
+
case 1:
|
|
198
|
+
client = _a.sent();
|
|
199
|
+
if (client) {
|
|
200
|
+
// Once connected, subscribe to all topics registered observers
|
|
201
|
+
this._topicObservers.forEach(function (_value, key) {
|
|
202
|
+
client.subscribe(key);
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
return [2 /*return*/, client];
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
}); })];
|
|
276
209
|
case 1: return [2 /*return*/, _a.sent()];
|
|
277
210
|
}
|
|
278
211
|
});
|
|
@@ -288,9 +221,9 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
288
221
|
client = _a.sent();
|
|
289
222
|
if (client && client.isConnected()) {
|
|
290
223
|
client.disconnect();
|
|
291
|
-
this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);
|
|
292
224
|
}
|
|
293
225
|
this.clientsQueue.remove(clientId);
|
|
226
|
+
this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSED);
|
|
294
227
|
return [2 /*return*/];
|
|
295
228
|
}
|
|
296
229
|
});
|
|
@@ -298,20 +231,22 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
298
231
|
};
|
|
299
232
|
MqttOverWSProvider.prototype.publish = function (topics, msg) {
|
|
300
233
|
return __awaiter(this, void 0, void 0, function () {
|
|
301
|
-
var targetTopics, message,
|
|
234
|
+
var targetTopics, message, client;
|
|
302
235
|
return __generator(this, function (_a) {
|
|
303
236
|
switch (_a.label) {
|
|
304
237
|
case 0:
|
|
305
238
|
targetTopics = [].concat(topics);
|
|
306
239
|
message = JSON.stringify(msg);
|
|
307
|
-
return [4 /*yield*/, this.
|
|
240
|
+
return [4 /*yield*/, this.clientsQueue.get(this.clientId)];
|
|
308
241
|
case 1:
|
|
309
|
-
url = _a.sent();
|
|
310
|
-
return [4 /*yield*/, this.connect(this.clientId, { url: url })];
|
|
311
|
-
case 2:
|
|
312
242
|
client = _a.sent();
|
|
313
|
-
|
|
314
|
-
|
|
243
|
+
if (client) {
|
|
244
|
+
logger.debug('Publishing to topic(s)', targetTopics.join(','), message);
|
|
245
|
+
targetTopics.forEach(function (topic) { return client.send(topic, message); });
|
|
246
|
+
}
|
|
247
|
+
else {
|
|
248
|
+
logger.debug('Publishing to topic(s) failed', targetTopics.join(','), message);
|
|
249
|
+
}
|
|
315
250
|
return [2 /*return*/];
|
|
316
251
|
}
|
|
317
252
|
});
|
|
@@ -342,6 +277,7 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
342
277
|
if (options === void 0) { options = {}; }
|
|
343
278
|
var targetTopics = [].concat(topics);
|
|
344
279
|
logger.debug('Subscribing to topic(s)', targetTopics.join(','));
|
|
280
|
+
var reconnectSubscription;
|
|
345
281
|
return new Observable(function (observer) {
|
|
346
282
|
targetTopics.forEach(function (topic) {
|
|
347
283
|
// this._topicObservers is used to notify the observers according to the topic received on the message
|
|
@@ -352,8 +288,6 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
352
288
|
}
|
|
353
289
|
observersForTopic.add(observer);
|
|
354
290
|
});
|
|
355
|
-
// @ts-ignore
|
|
356
|
-
var client;
|
|
357
291
|
var _a = options.clientId, clientId = _a === void 0 ? _this.clientId : _a;
|
|
358
292
|
// this._clientIdObservers is used to close observers when client gets disconnected
|
|
359
293
|
var observersForClientId = _this._clientIdObservers.get(clientId);
|
|
@@ -363,65 +297,95 @@ var MqttOverWSProvider = /** @class */ (function (_super) {
|
|
|
363
297
|
observersForClientId.add(observer);
|
|
364
298
|
_this._clientIdObservers.set(clientId, observersForClientId);
|
|
365
299
|
(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
366
|
-
var
|
|
367
|
-
|
|
368
|
-
|
|
300
|
+
var getClient;
|
|
301
|
+
var _this = this;
|
|
302
|
+
return __generator(this, function (_a) {
|
|
303
|
+
switch (_a.label) {
|
|
369
304
|
case 0:
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
305
|
+
getClient = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
306
|
+
var _a, url, _b, client_1, e_1;
|
|
307
|
+
return __generator(this, function (_c) {
|
|
308
|
+
switch (_c.label) {
|
|
309
|
+
case 0:
|
|
310
|
+
_c.trys.push([0, 5, , 6]);
|
|
311
|
+
_a = options.url;
|
|
312
|
+
if (!(_a === void 0)) return [3 /*break*/, 2];
|
|
313
|
+
return [4 /*yield*/, this.endpoint];
|
|
314
|
+
case 1:
|
|
315
|
+
_b = _c.sent();
|
|
316
|
+
return [3 /*break*/, 3];
|
|
317
|
+
case 2:
|
|
318
|
+
_b = _a;
|
|
319
|
+
_c.label = 3;
|
|
320
|
+
case 3:
|
|
321
|
+
url = _b;
|
|
322
|
+
return [4 /*yield*/, this.connect(clientId, { url: url })];
|
|
323
|
+
case 4:
|
|
324
|
+
client_1 = _c.sent();
|
|
325
|
+
if (client_1 !== undefined) {
|
|
326
|
+
targetTopics.forEach(function (topic) {
|
|
327
|
+
client_1.subscribe(topic);
|
|
328
|
+
});
|
|
329
|
+
}
|
|
330
|
+
return [3 /*break*/, 6];
|
|
331
|
+
case 5:
|
|
332
|
+
e_1 = _c.sent();
|
|
333
|
+
logger.debug('Error forming connection', e_1);
|
|
334
|
+
return [3 /*break*/, 6];
|
|
335
|
+
case 6: return [2 /*return*/];
|
|
336
|
+
}
|
|
337
|
+
});
|
|
338
|
+
}); };
|
|
339
|
+
// Establish the initial connection
|
|
340
|
+
return [4 /*yield*/, getClient()];
|
|
373
341
|
case 1:
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
_c.label = 4;
|
|
382
|
-
case 4:
|
|
383
|
-
_c.trys.push([4, 6, , 7]);
|
|
384
|
-
return [4 /*yield*/, this.connect(clientId, { url: url })];
|
|
385
|
-
case 5:
|
|
386
|
-
client = _c.sent();
|
|
387
|
-
targetTopics.forEach(function (topic) {
|
|
388
|
-
client.subscribe(topic);
|
|
342
|
+
// Establish the initial connection
|
|
343
|
+
_a.sent();
|
|
344
|
+
// Add an observable to the reconnection list to manage reconnection for this subscription
|
|
345
|
+
reconnectSubscription = new Observable(function (observer) {
|
|
346
|
+
_this.reconnectionMonitor.addObserver(observer);
|
|
347
|
+
}).subscribe(function () {
|
|
348
|
+
getClient();
|
|
389
349
|
});
|
|
390
|
-
return [
|
|
391
|
-
case 6:
|
|
392
|
-
e_1 = _c.sent();
|
|
393
|
-
observer.error(e_1);
|
|
394
|
-
return [3 /*break*/, 7];
|
|
395
|
-
case 7: return [2 /*return*/];
|
|
350
|
+
return [2 /*return*/];
|
|
396
351
|
}
|
|
397
352
|
});
|
|
398
353
|
}); })();
|
|
399
|
-
return function () {
|
|
354
|
+
return function () { return __awaiter(_this, void 0, void 0, function () {
|
|
355
|
+
var client;
|
|
356
|
+
var _this = this;
|
|
400
357
|
var _a, _b;
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
358
|
+
return __generator(this, function (_c) {
|
|
359
|
+
switch (_c.label) {
|
|
360
|
+
case 0: return [4 /*yield*/, this.clientsQueue.get(clientId)];
|
|
361
|
+
case 1:
|
|
362
|
+
client = _c.sent();
|
|
363
|
+
reconnectSubscription === null || reconnectSubscription === void 0 ? void 0 : reconnectSubscription.unsubscribe();
|
|
364
|
+
if (client) {
|
|
365
|
+
(_a = this._clientIdObservers.get(clientId)) === null || _a === void 0 ? void 0 : _a.delete(observer);
|
|
366
|
+
// No more observers per client => client not needed anymore
|
|
367
|
+
if (((_b = this._clientIdObservers.get(clientId)) === null || _b === void 0 ? void 0 : _b.size) === 0) {
|
|
368
|
+
this.disconnect(clientId);
|
|
369
|
+
this.connectionStateMonitor.record(CONNECTION_CHANGE.CLOSING_CONNECTION);
|
|
370
|
+
this._clientIdObservers.delete(clientId);
|
|
371
|
+
}
|
|
372
|
+
targetTopics.forEach(function (topic) {
|
|
373
|
+
var observersForTopic = _this._topicObservers.get(topic) ||
|
|
374
|
+
new Set();
|
|
375
|
+
observersForTopic.delete(observer);
|
|
376
|
+
// if no observers exists for the topic, topic should be removed
|
|
377
|
+
if (observersForTopic.size === 0) {
|
|
378
|
+
_this._topicObservers.delete(topic);
|
|
379
|
+
if (client.isConnected()) {
|
|
380
|
+
client.unsubscribe(topic);
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
});
|
|
419
384
|
}
|
|
420
|
-
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
};
|
|
385
|
+
return [2 /*return*/, null];
|
|
386
|
+
}
|
|
387
|
+
});
|
|
388
|
+
}); };
|
|
425
389
|
});
|
|
426
390
|
};
|
|
427
391
|
return MqttOverWSProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MqttOverWSProvider.js","sourceRoot":"","sources":["../../src/Providers/MqttOverWSProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MqttOverWSProvider.js","sourceRoot":"","sources":["../../src/Providers/MqttOverWSProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
1
|
+
import { __assign } from "tslib";
|
|
12
2
|
import { ConsoleLogger as Logger } from '@aws-amplify/core';
|
|
13
3
|
var logger = new Logger('AbstractPubSubProvider');
|
|
14
4
|
var AbstractPubSubProvider = /** @class */ (function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSubProvider.js","sourceRoot":"","sources":["../../src/Providers/PubSubProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PubSubProvider.js","sourceRoot":"","sources":["../../src/Providers/PubSubProvider.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,aAAa,IAAI,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE5D,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAEpD;IAGC,gCAAY,OAA6B;QAA7B,wBAAA,EAAA,YAA6B;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,0CAAS,GAAT,UAAU,MAA4B;QAA5B,uBAAA,EAAA,WAA4B;QACrC,IAAI,CAAC,OAAO,yBAAQ,MAAM,GAAK,IAAI,CAAC,OAAO,CAAE,CAAC;QAE9C,MAAM,CAAC,KAAK,CAAC,eAAa,IAAI,CAAC,eAAe,EAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,4CAAW,GAAX;QACC,OAAO,QAAQ,CAAC;IACjB,CAAC;IAID,sBAAc,2CAAO;aAArB;YACC,oBAAY,IAAI,CAAC,OAAO,EAAG;QAC5B,CAAC;;;OAAA;IAcF,6BAAC;AAAD,CAAC,AArCD,IAqCC"}
|
|
@@ -85,3 +85,11 @@ export declare const DEFAULT_KEEP_ALIVE_TIMEOUT: number;
|
|
|
85
85
|
* Default Time in milleseconds to alert for missed GQL_CONNECTION_KEEP_ALIVE message
|
|
86
86
|
*/
|
|
87
87
|
export declare const DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT: number;
|
|
88
|
+
/**
|
|
89
|
+
* Default delay time in milleseconds between when reconnect is triggered vs when it is attempted
|
|
90
|
+
*/
|
|
91
|
+
export declare const RECONNECT_DELAY: number;
|
|
92
|
+
/**
|
|
93
|
+
* Default interval time in milleseconds between when reconnect is re-attempted
|
|
94
|
+
*/
|
|
95
|
+
export declare const RECONNECT_INTERVAL: number;
|
|
@@ -90,4 +90,12 @@ export var DEFAULT_KEEP_ALIVE_TIMEOUT = 5 * 60 * 1000;
|
|
|
90
90
|
* Default Time in milleseconds to alert for missed GQL_CONNECTION_KEEP_ALIVE message
|
|
91
91
|
*/
|
|
92
92
|
export var DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT = 65 * 1000;
|
|
93
|
+
/**
|
|
94
|
+
* Default delay time in milleseconds between when reconnect is triggered vs when it is attempted
|
|
95
|
+
*/
|
|
96
|
+
export var RECONNECT_DELAY = 5 * 1000;
|
|
97
|
+
/**
|
|
98
|
+
* Default interval time in milleseconds between when reconnect is re-attempted
|
|
99
|
+
*/
|
|
100
|
+
export var RECONNECT_INTERVAL = 60 * 1000;
|
|
93
101
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/Providers/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,YAAY,GAAG,IAAI,CAAC;AAEjC,MAAM,CAAC,IAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnD,MAAM,CAAC,IAAM,uBAAuB,GAAG,uBAAuB,CAAC;AAE/D,MAAM,CAAN,IAAY,aAmDX;AAnDD,WAAY,aAAa;IACxB;;;OAGG;IACH,wDAAuC,CAAA;IACvC;;;OAGG;IACH,0DAAyC,CAAA;IACzC;;;OAGG;IACH,sDAAqC,CAAA;IACrC;;;OAGG;IACH,oCAAmB,CAAA;IACnB;;;OAGG;IACH,4CAA2B,CAAA;IAC3B;;;OAGG;IACH,kCAAiB,CAAA;IACjB;;;OAGG;IACH,iDAAgC,CAAA;IAChC;;;OAGG;IACH,kCAAiB,CAAA;IACjB;;;OAGG;IACH,0CAAyB,CAAA;IACzB;;;OAGG;IACH,oCAAmB,CAAA;AACpB,CAAC,EAnDW,aAAa,KAAb,aAAa,QAmDxB;AAED,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC9B,mEAAO,CAAA;IACP,uEAAS,CAAA;IACT,iEAAM,CAAA;AACP,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAED,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACxB,qDAAM,CAAA;IACN,mDAAK,CAAA;IACL,6DAAU,CAAA;AACX,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAED,MAAM,CAAC,IAAM,cAAc,GAAG,CAC7B,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU;IAChE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC/B,CAAC,CAAC,mBAAmB,CACZ,CAAC;AAEZ,MAAM,CAAC,IAAM,4BAA4B,GAAG;IAC3C,MAAM,EAAE,mCAAmC;IAC3C,kBAAkB,EAAE,SAAS;IAC7B,cAAc,EAAE,iCAAiC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG,KAAK,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAAG,KAAK,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,IAAM,0BAA0B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAExD;;GAEG;AACH,MAAM,CAAC,IAAM,gCAAgC,GAAG,EAAE,GAAG,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/Providers/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,YAAY,GAAG,IAAI,CAAC;AAEjC,MAAM,CAAC,IAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnD,MAAM,CAAC,IAAM,uBAAuB,GAAG,uBAAuB,CAAC;AAE/D,MAAM,CAAN,IAAY,aAmDX;AAnDD,WAAY,aAAa;IACxB;;;OAGG;IACH,wDAAuC,CAAA;IACvC;;;OAGG;IACH,0DAAyC,CAAA;IACzC;;;OAGG;IACH,sDAAqC,CAAA;IACrC;;;OAGG;IACH,oCAAmB,CAAA;IACnB;;;OAGG;IACH,4CAA2B,CAAA;IAC3B;;;OAGG;IACH,kCAAiB,CAAA;IACjB;;;OAGG;IACH,iDAAgC,CAAA;IAChC;;;OAGG;IACH,kCAAiB,CAAA;IACjB;;;OAGG;IACH,0CAAyB,CAAA;IACzB;;;OAGG;IACH,oCAAmB,CAAA;AACpB,CAAC,EAnDW,aAAa,KAAb,aAAa,QAmDxB;AAED,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC9B,mEAAO,CAAA;IACP,uEAAS,CAAA;IACT,iEAAM,CAAA;AACP,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAED,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACxB,qDAAM,CAAA;IACN,mDAAK,CAAA;IACL,6DAAU,CAAA;AACX,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAED,MAAM,CAAC,IAAM,cAAc,GAAG,CAC7B,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU;IAChE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC/B,CAAC,CAAC,mBAAmB,CACZ,CAAC;AAEZ,MAAM,CAAC,IAAM,4BAA4B,GAAG;IAC3C,MAAM,EAAE,mCAAmC;IAC3C,kBAAkB,EAAE,SAAS;IAC7B,cAAc,EAAE,iCAAiC;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG,KAAK,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAAG,KAAK,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,IAAM,0BAA0B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAExD;;GAEG;AACH,MAAM,CAAC,IAAM,gCAAgC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC;AAExC;;GAEG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export
|
|
1
|
+
export { AbstractPubSubProvider } from './PubSubProvider';
|
|
2
|
+
export { AWSAppSyncProvider } from './AWSAppSyncProvider';
|
|
3
|
+
export { AWSAppSyncRealTimeProvider, AWSAppSyncRealTimeProviderOptions, ObserverQuery, } from './AWSAppSyncRealTimeProvider';
|
|
4
|
+
export { AWSIoTProvider, AWSIoTProviderOptions } from './AWSIotProvider';
|
|
5
|
+
export { MqttProviderOptions, MqttOverWSProvider, mqttTopicMatch, } from './MqttOverWSProvider';
|
|
@@ -1,18 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
9
|
-
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
10
|
-
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
11
|
-
* and limitations under the License.
|
|
12
|
-
*/
|
|
13
|
-
export * from './PubSubProvider';
|
|
14
|
-
export * from './AWSAppSyncProvider';
|
|
15
|
-
export * from './AWSAppSyncRealTimeProvider';
|
|
16
|
-
export * from './AWSIotProvider';
|
|
17
|
-
export * from './MqttOverWSProvider';
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
export { AbstractPubSubProvider } from './PubSubProvider';
|
|
4
|
+
export { AWSAppSyncProvider } from './AWSAppSyncProvider';
|
|
5
|
+
export { AWSAppSyncRealTimeProvider, } from './AWSAppSyncRealTimeProvider';
|
|
6
|
+
export { AWSIoTProvider } from './AWSIotProvider';
|
|
7
|
+
export { MqttOverWSProvider, mqttTopicMatch, } from './MqttOverWSProvider';
|
|
18
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Providers/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Providers/index.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACN,0BAA0B,GAG1B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,cAAc,EAAyB,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAEN,kBAAkB,EAClB,cAAc,GACd,MAAM,sBAAsB,CAAC"}
|