@opentap/runner-client 2.0.0-alpha.2.13 → 2.0.0-alpha.2.15
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/lib/BaseClient.js +22 -17
- package/lib/DTOs.d.ts +1 -1
- package/lib/DTOs.js +1 -1
- package/package.json +1 -1
package/lib/BaseClient.js
CHANGED
|
@@ -197,7 +197,7 @@ var BaseClient = /** @class */ (function () {
|
|
|
197
197
|
*/
|
|
198
198
|
BaseClient.prototype.sendChunked = function (subject, payload, options) {
|
|
199
199
|
return __awaiter(this, void 0, void 0, function () {
|
|
200
|
-
var requestSubject, stringCodec, data, headers, opts, fileDescriptor, getChunk, message, i, response, jsonCodec;
|
|
200
|
+
var requestSubject, stringCodec, data, headers, opts, fileDescriptor, getChunk, dataSubject, message, i, response, jsonCodec;
|
|
201
201
|
return __generator(this, function (_a) {
|
|
202
202
|
switch (_a.label) {
|
|
203
203
|
case 0:
|
|
@@ -217,19 +217,21 @@ var BaseClient = /** @class */ (function () {
|
|
|
217
217
|
var offset = chunk * fileDescriptor.chunkSize;
|
|
218
218
|
return data.slice(offset, offset + fileDescriptor.chunkSize);
|
|
219
219
|
};
|
|
220
|
-
this.request(subject, fileDescriptor);
|
|
221
|
-
i = 0;
|
|
222
|
-
_a.label = 1;
|
|
220
|
+
return [4 /*yield*/, this.request(subject, fileDescriptor)];
|
|
223
221
|
case 1:
|
|
224
|
-
|
|
225
|
-
|
|
222
|
+
dataSubject = _a.sent();
|
|
223
|
+
i = 0;
|
|
224
|
+
_a.label = 2;
|
|
226
225
|
case 2:
|
|
227
|
-
|
|
228
|
-
|
|
226
|
+
if (!(i < fileDescriptor.numberOfChunks)) return [3 /*break*/, 5];
|
|
227
|
+
return [4 /*yield*/, this.connection.request(dataSubject, getChunk(i), opts)];
|
|
229
228
|
case 3:
|
|
230
|
-
|
|
231
|
-
|
|
229
|
+
message = _a.sent();
|
|
230
|
+
_a.label = 4;
|
|
232
231
|
case 4:
|
|
232
|
+
i++;
|
|
233
|
+
return [3 /*break*/, 2];
|
|
234
|
+
case 5:
|
|
233
235
|
if (message && message.data.length !== 0) {
|
|
234
236
|
jsonCodec = JSONCodec();
|
|
235
237
|
response = jsonCodec.decode(message.data);
|
|
@@ -264,6 +266,11 @@ var BaseClient = /** @class */ (function () {
|
|
|
264
266
|
var numberOfChunks = 9999;
|
|
265
267
|
var combinedResult = new Uint8Array([]);
|
|
266
268
|
var received = 0;
|
|
269
|
+
var resolveIfComplete = function () {
|
|
270
|
+
if (received === numberOfChunks) {
|
|
271
|
+
resolve(combinedResult);
|
|
272
|
+
}
|
|
273
|
+
};
|
|
267
274
|
var subscription = _this.connection.subscribe(replySubject);
|
|
268
275
|
subscription.callback = function (error, message) {
|
|
269
276
|
if (error) {
|
|
@@ -272,15 +279,13 @@ var BaseClient = /** @class */ (function () {
|
|
|
272
279
|
combinedResult = new Uint8Array(__spreadArray(__spreadArray([], Array.from(combinedResult), true), Array.from(message === null || message === void 0 ? void 0 : message.data), true));
|
|
273
280
|
received++;
|
|
274
281
|
message.respond(Empty);
|
|
275
|
-
|
|
276
|
-
resolve(combinedResult);
|
|
277
|
-
}
|
|
282
|
+
resolveIfComplete();
|
|
278
283
|
};
|
|
279
|
-
return _this.request(subject, replySubject, opts)
|
|
284
|
+
return _this.request(subject, replySubject, opts)
|
|
285
|
+
.then(function (fileDescriptor) { return FileDescriptor.fromJS(fileDescriptor); })
|
|
286
|
+
.then(function (fileDescriptor) {
|
|
280
287
|
numberOfChunks = fileDescriptor.numberOfChunks;
|
|
281
|
-
|
|
282
|
-
resolve(combinedResult);
|
|
283
|
-
}
|
|
288
|
+
resolveIfComplete();
|
|
284
289
|
});
|
|
285
290
|
}).then(function (byteArray) {
|
|
286
291
|
var jsonCodec = JSONCodec();
|
package/lib/DTOs.d.ts
CHANGED
|
@@ -449,7 +449,7 @@ export declare class FileDescriptor implements IFileDescriptor {
|
|
|
449
449
|
private readonly defaultChunkSize;
|
|
450
450
|
constructor(fileSize: number, chunkSize?: number);
|
|
451
451
|
init(_data?: any): void;
|
|
452
|
-
static fromJS(data: any):
|
|
452
|
+
static fromJS(data: any): FileDescriptor;
|
|
453
453
|
toJSON(data?: any): any;
|
|
454
454
|
}
|
|
455
455
|
export interface IFileDescriptor {
|
package/lib/DTOs.js
CHANGED
|
@@ -1318,7 +1318,7 @@ var FileDescriptor = /** @class */ (function () {
|
|
|
1318
1318
|
};
|
|
1319
1319
|
FileDescriptor.fromJS = function (data) {
|
|
1320
1320
|
data = typeof data === 'object' ? data : {};
|
|
1321
|
-
var result = new
|
|
1321
|
+
var result = new FileDescriptor(0);
|
|
1322
1322
|
result.init(data);
|
|
1323
1323
|
return result;
|
|
1324
1324
|
};
|