@mcma/azure-queue-worker-invoker
Version:
Invoke MCMA Worker functions on Azure using Azure Queue Storage
28 lines (27 loc) • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.QueueWorkerInvoker = void 0;
const identity_1 = require("@azure/identity");
const storage_queue_1 = require("@azure/storage-queue");
const core_1 = require("@mcma/core");
const worker_invoker_1 = require("@mcma/worker-invoker");
class QueueWorkerInvoker extends worker_invoker_1.WorkerInvoker {
config;
constructor(config) {
super();
this.config = config;
if (!this.config) {
this.config = {};
}
if (!this.config.credentials) {
if (!this.config.credentials) {
this.config.credentials = new identity_1.DefaultAzureCredential();
}
}
}
async invokeWorker(workerFunctionId, workerRequest) {
const queueClient = new storage_queue_1.QueueClient(workerFunctionId, this.config.credentials);
await queueClient.sendMessage(core_1.Utils.toBase64(JSON.stringify(workerRequest)));
}
}
exports.QueueWorkerInvoker = QueueWorkerInvoker;