UNPKG

@mcma/client

Version:

Node module with classes and functions used to access services in an MCMA environment

27 lines (26 loc) 1.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ServiceClient = void 0; const resource_endpoint_client_1 = require("./resource-endpoint-client"); class ServiceClient { endpointsMap = {}; constructor(service, authProvider, httpClientConfig) { for (const resourceEndpoint of service.resources) { this.endpointsMap[resourceEndpoint.resourceType] = new resource_endpoint_client_1.ResourceEndpointClient(resourceEndpoint, authProvider, httpClientConfig, service.authType); } } getResourceTypeName(resourceType) { return typeof resourceType === "function" && resourceType.name ? resourceType.name : resourceType; } hasResourceEndpoint(resourceType) { return this.endpointsMap[this.getResourceTypeName(resourceType)] !== undefined; } getResourceEndpointClient(resourceType) { return this.endpointsMap[this.getResourceTypeName(resourceType)]; } getAllResourceEndpointClients() { return Object.keys(this.endpointsMap).map(k => this.endpointsMap[k]); } } exports.ServiceClient = ServiceClient;