transgate
Version:
Agent-based task flow framework
26 lines (25 loc) • 643 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const buffer_1 = require("./buffer");
/**
* Joint between two agents
*/
class JointGate {
constructor() {
this._buffer = new buffer_1.ItemBuffer();
}
/**
* @return {Promise<object>} - a promise that resolves the item when buffer contains or sended
*/
receive() {
return this._buffer.read();
}
/**
* @param {object} item - sending item
* @return {Promise} - a promise that resolves immediately
*/
async send(item) {
await this._buffer.write(item);
}
}
exports.JointGate = JointGate;