UNPKG

botframework-streaming

Version:

Streaming library for the Microsoft Bot Framework

77 lines 4.11 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.SendOperations = void 0; const cancelDisassembler_1 = require("../disassemblers/cancelDisassembler"); const httpContentStreamDisassembler_1 = require("../disassemblers/httpContentStreamDisassembler"); const requestDisassembler_1 = require("../disassemblers/requestDisassembler"); const responseDisassembler_1 = require("../disassemblers/responseDisassembler"); const payloadTypes_1 = require("./payloadTypes"); /** * Send operations for streaming payloads. */ class SendOperations { /** * Initializes a new instance of the [SendOperations](xref:botframework-streaming.SendOperations) class. * * @param payloadSender The [PayloadSender](xref:botframework-streaming.PayloadSender) that will send the disassembled data from all of this instance's send operations. */ constructor(payloadSender) { this.payloadSender = payloadSender; } /** * The send operation used to send a [StreamingRequest](xref:botframework-streaming.StreamingRequest). * * @param id The ID to assign to the [RequestDisassembler](xref:botframework-streaming.RequestDisassembler) used by this operation. * @param request The request to send. */ sendRequest(id, request) { return __awaiter(this, void 0, void 0, function* () { const disassembler = new requestDisassembler_1.RequestDisassembler(this.payloadSender, id, request); yield disassembler.disassemble(); if (request.streams) { request.streams.forEach((contentStream) => __awaiter(this, void 0, void 0, function* () { yield new httpContentStreamDisassembler_1.HttpContentStreamDisassembler(this.payloadSender, contentStream).disassemble(); })); } }); } /** * The send operation used to send a [PayloadTypes.response](xref:botframework-streaming.PayloadTypes.response). * * @param id The ID to assign to the [ResponseDisassembler](xref:botframework-streaming.ResponseDisassembler) used by this operation. * @param response The response to send. */ sendResponse(id, response) { return __awaiter(this, void 0, void 0, function* () { const disassembler = new responseDisassembler_1.ResponseDisassembler(this.payloadSender, id, response); yield disassembler.disassemble(); if (response.streams) { response.streams.forEach((contentStream) => __awaiter(this, void 0, void 0, function* () { yield new httpContentStreamDisassembler_1.HttpContentStreamDisassembler(this.payloadSender, contentStream).disassemble(); })); } }); } /** * The send operation used to send a [PayloadTypes.cancelStream](xref:botframework-streaming.PayloadTypes.cancelStream). * * @param id The ID to assign to the [CancelDisassembler](xref:botframework-streaming.CancelDisassembler) used by this operation. */ sendCancelStream(id) { return __awaiter(this, void 0, void 0, function* () { const disassembler = new cancelDisassembler_1.CancelDisassembler(this.payloadSender, id, payloadTypes_1.PayloadTypes.cancelStream); disassembler.disassemble(); }); } } exports.SendOperations = SendOperations; //# sourceMappingURL=sendOperations.js.map