Skip to main content
Glama
Deferred.js952 B
"use strict"; /** * This is apparently a bit like a Jquery deferred, hence the name */ class Deferred { constructor(Promise) { this._state = Deferred.PENDING; this._resolve = undefined; this._reject = undefined; this._promise = new Promise((resolve, reject) => { this._resolve = resolve; this._reject = reject; }); } get state() { return this._state; } get promise() { return this._promise; } reject(reason) { if (this._state !== Deferred.PENDING) { return; } this._state = Deferred.REJECTED; this._reject(reason); } resolve(value) { if (this._state !== Deferred.PENDING) { return; } this._state = Deferred.FULFILLED; this._resolve(value); } } // TODO: should these really live here? or be a seperate 'state' enum Deferred.PENDING = "PENDING"; Deferred.FULFILLED = "FULFILLED"; Deferred.REJECTED = "REJECTED"; module.exports = Deferred;

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GongRzhe/REDIS-MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server