UNPKG

@sap/subaccount-destination-service-provider

Version:

Provide service consumption of SAP subaccount services

58 lines 2.99 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.SubaccountDestinationProviderRepository = void 0; const abapServiceRetriever_1 = require("../retrievers/abapServiceRetriever"); const service_provider_apis_1 = require("@sap/service-provider-apis"); class SubaccountDestinationProviderRepository { constructor() { this.logger = service_provider_apis_1.DefaultLogger; } init(connectivityProvider) { return __awaiter(this, void 0, void 0, function* () { try { this.serviceRetriever = this.buildServiceRetriever(connectivityProvider); } catch (e) { this.logger.error(`init: ${e.message}`); throw new service_provider_apis_1.ServiceProviderError(service_provider_apis_1.ServiceProviderErrorCode.INTERNAL_ERROR, e); } }); } getSystems(filter) { return __awaiter(this, void 0, void 0, function* () { try { if (this.serviceRetriever.retrieveDestinations) { return yield this.serviceRetriever.retrieveDestinations(filter); } } catch (e) { this.logger.error(`getSystems: ${e.message}`); if (e instanceof service_provider_apis_1.ServiceProviderError) { e.message = `${service_provider_apis_1.messages.SYS_ERROR_FAIL_RETRIEVE_DESTINATIONS}: ${e.message}`; throw e; } else { throw new service_provider_apis_1.ServiceProviderError(service_provider_apis_1.ServiceProviderErrorCode.INTERNAL_ERROR, e); } } throw new service_provider_apis_1.ServiceProviderError(service_provider_apis_1.ServiceProviderErrorCode.INTERNAL_ERROR, service_provider_apis_1.messages.SYS_ERROR_RETRIEVE_DESTINATION_METHOD); }); } getServiceRetriever() { return this.serviceRetriever; } buildServiceRetriever(connectivityProvider) { return new abapServiceRetriever_1.AbapServiceRetriever(connectivityProvider); } } exports.SubaccountDestinationProviderRepository = SubaccountDestinationProviderRepository; //# sourceMappingURL=subaccountDestinationProviderRepository.js.map