UNPKG

@berish/rfp

Version:

Binary secure transport organization protocol for peer communication using function fingerprints

43 lines 2.02 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.sendResolve = void 0; const chunk_1 = require("../../chunk"); const const_1 = require("../../const"); const errors_1 = require("../../errors"); const sendRaw_1 = require("../sendRaw"); const sendReject_1 = require("./sendReject"); function sendResolve(peer, outcomeData, incomeChunk) { return __awaiter(this, void 0, void 0, function* () { try { if (incomeChunk.notWaiting) return void 0; const outcomeChunk = chunk_1.fillChunk({ aside: incomeChunk.aside, body: outcomeData, notWaiting: true, path: incomeChunk.chunkId, status: 'resolve', isForce: peer[const_1.SYMBOL_PEER_SCOPE].hasBlockers() && incomeChunk.isBlocker, }); yield sendRaw_1.sendRaw(peer, outcomeChunk, incomeChunk); peer.logger('peer')('sendResolve').info(outcomeChunk); } catch (err) { if (typeof err === 'object' && err instanceof errors_1.PeerDecoratorException) { yield sendReject_1.sendReject(peer, err.err, incomeChunk); } return void 0; } }); } exports.sendResolve = sendResolve; //# sourceMappingURL=sendResolve.js.map