/*! * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express * or implied. See the License for the specific language governing * permissions and limitations under the License. */ import configData from './config.json'; class Configuration { get(key) { return configData[key]; } set(key, value) { var prev = configData[key]; configData[key] = value; return prev; } setCatalogApiRoot(CatalogApiRoot) { let restCatalogPrefix = CatalogApiRoot, restPrefix = CatalogApiRoot.replace(/\/feProxy\b[^:]*$/, '/feProxy/onboarding-api'); this.set('restPrefix', restPrefix); this.set('restCatalogPrefix', restCatalogPrefix); } setCatalogApiHeaders(CatalogApiHeaders) { this.set('CatalogApiHeaders', CatalogApiHeaders); let {userId: {value: UserID} = {}} = CatalogApiHeaders; this.set('UserID', UserID); } } const configuration = new Configuration(); (function setDefaultRestPrefixes(configuration) { configuration.set('restPrefix', configuration.get('defaultRestPrefix')); configuration.set('restCatalogPrefix', configuration.get('defaultRestCatalogPrefix')); configuration.set('appContextPath', configuration.get('appContextPath')); })(configuration); (function setDefaultWebsocketConfig(configuration) { let websocketPort = configuration.get('defaultWebsocketPort'); if (DEBUG) { websocketPort = configuration.get('defaultDebugWebsocketPort'); } configuration.set('websocketPort', websocketPort); configuration.set('websocketPath', configuration.get('defaultWebsocketPath')); })(configuration); export default configuration;