+++ /dev/null
-/**
- * ============LICENSE_START=======================================================
- * org.onap.aai
- * ================================================================================
- * Copyright © 2019 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2019 Amdocs
- * ================================================================================
- * 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.
- * ============LICENSE_END=========================================================
- */
-package org.onap.aai.sa.rest;
-
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.concurrent.atomic.AtomicBoolean;
-import org.onap.aai.sa.searchdbabstraction.util.SearchDbConstants;
-
-
-public class SettingConfiguration {
-
- /**
- * Indicates whether or not we have imported the filter and analyzer configurations.
- */
- private AtomicBoolean configured = new AtomicBoolean(false);
-
- /**
- * A json format string which is readable by Elastic Search and defines all of the custom filters and analyzers that
- * we need Elastic Search to know about.
- */
- private String settings;
-
- public void init(String settingConfigFile) {
-
- if (configured.compareAndSet(false, true)) {
- try {
- Path path = Paths.get(settingConfigFile);
- settings = new String(Files.readAllBytes(path));
-
- // Remove the enclosing brackets from the json blob.
- settings = settings.replaceFirst("\\{", "");
- settings = settings.substring(0, settings.lastIndexOf("}"));
- } catch (IOException e) {
- // It is valid not to have a settings file.
- settings = "";
- }
- }
- }
-
-
- /**
- * Returns the set of pre-configured settings.
- *
- * @return - settings.
- */
- public String getSettings() {
- init(SearchDbConstants.SDB_SETTINGS_CONFIG_FILE);
- return settings;
- }
-
- public String getSettingsWithAnalysis(AnalysisConfiguration analysisConfig) {
- String ac = analysisConfig.getEsIndexSettings();
- StringBuilder sb = new StringBuilder();
- sb.append(ac.substring(0, ac.lastIndexOf("}")));
-
- if (!getSettings().trim().isEmpty()) {
- sb.append(", " + getSettings());
- }
-
- sb.append(" }");
- return sb.toString();
- }
-}