@sap-cloud-sdk/core
Version:
SAP Cloud SDK for JavaScript core
34 lines • 1.57 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.clientCredentialsTokenCache = exports.getGrantTokenCacheKey = void 0;
var moment_1 = __importDefault(require("moment"));
var cache_1 = require("./cache");
var ClientCredentialsTokenCache = function (cache) { return ({
// TODO: this method name can be shortened
// TODO: Remove client credentials in v2.0
getGrantTokenFromCache: function (url, credentialsOrClientId) {
return cache.get(getGrantTokenCacheKey(url, credentialsOrClientId));
},
// TODO: this method name can be shortened
cacheRetrievedToken: function (url, credentialsOrClientId, token) {
cache.set(getGrantTokenCacheKey(url, credentialsOrClientId), token, token.expires_in
? (0, moment_1.default)().add(token.expires_in, 'second').unix() * 1000
: undefined);
},
clear: function () {
cache.clear();
},
getCacheInstance: function () { return cache; }
}); };
function getGrantTokenCacheKey(url, credentialsOrClientId) {
var clientId = typeof credentialsOrClientId === 'string'
? credentialsOrClientId
: credentialsOrClientId.username;
return [url, clientId].join(':');
}
exports.getGrantTokenCacheKey = getGrantTokenCacheKey;
exports.clientCredentialsTokenCache = ClientCredentialsTokenCache(new cache_1.Cache());
//# sourceMappingURL=client-credentials-token-cache.js.map
;