@dolittle/sdk.resources
Version:
Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.
29 lines • 1.92 kB
JavaScript
;
// Copyright (c) Dolittle. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
Object.defineProperty(exports, "__esModule", { value: true });
exports.ResourcesBuilder = void 0;
const IResourcesBuilder_1 = require("./IResourcesBuilder");
const ResourcesNotFetchedForTenant_1 = require("./ResourcesNotFetchedForTenant");
/**
* Defines a system that knows about Resources provided by the Runtime.
*/
class ResourcesBuilder extends IResourcesBuilder_1.IResourcesBuilder {
/**
* Initialises a new instance of the {@link ResourcesBuilder} class.
* @param {Map<TenantId, IResources>} _tenantResources - The fetched resources per tenant.
*/
constructor(_tenantResources) {
super();
this._tenantResources = _tenantResources;
}
/** @inheritdoc */
forTenant(tenant) {
if (!this._tenantResources.has(tenant)) {
throw new ResourcesNotFetchedForTenant_1.ResourcesNotFetchedForTenant(tenant);
}
return this._tenantResources.get(tenant);
}
}
exports.ResourcesBuilder = ResourcesBuilder;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzb3VyY2VzQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIuLi8iLCJzb3VyY2VzIjpbIlJlc291cmNlc0J1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLCtDQUErQztBQUMvQyxxR0FBcUc7OztBQUtyRywyREFBd0Q7QUFDeEQsaUZBQThFO0FBRTlFOztHQUVHO0FBQ0gsTUFBYSxnQkFBaUIsU0FBUSxxQ0FBaUI7SUFDbkQ7OztPQUdHO0lBQ0gsWUFBNkIsZ0JBQTJDO1FBQ3BFLEtBQUssRUFBRSxDQUFDO1FBRGlCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBMkI7SUFFeEUsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixTQUFTLENBQUMsTUFBZ0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEMsTUFBTSxJQUFJLDJEQUE0QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2xEO1FBRUQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBRSxDQUFDO0lBQzlDLENBQUM7Q0FDSjtBQWpCRCw0Q0FpQkMifQ==