X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fmodelloader%2Fconfig%2FModelLoaderConfig.java;h=b9cd19332a34ef2c608117d83587d22960ccac8f;hb=8ad5aa365b9da241ea1ead2300078b2e39da78c8;hp=6a45f28b71f2d53c495b42c462da73c20ff4eea9;hpb=270656abb1ed24930b2f9e57f5bef659494f5e8e;p=aai%2Fmodel-loader.git diff --git a/src/main/java/org/onap/aai/modelloader/config/ModelLoaderConfig.java b/src/main/java/org/onap/aai/modelloader/config/ModelLoaderConfig.java index 6a45f28..b9cd193 100644 --- a/src/main/java/org/onap/aai/modelloader/config/ModelLoaderConfig.java +++ b/src/main/java/org/onap/aai/modelloader/config/ModelLoaderConfig.java @@ -26,6 +26,8 @@ import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; import java.util.Properties; + +import org.apache.commons.lang3.StringUtils; import org.eclipse.jetty.util.security.Password; import org.onap.sdc.api.consumer.IConfiguration; @@ -108,8 +110,10 @@ public class ModelLoaderConfig implements IConfiguration { /** * Original constructor * - * @param modelLoaderProperties properties needed to be configured for the model loader - * @param certLocation location of the certificate + * @param modelLoaderProperties + * properties needed to be configured for the model loader + * @param certLocation + * location of the certificate */ public ModelLoaderConfig(Properties modelLoaderProperties, String certLocation) { this.modelLoaderProperties = modelLoaderProperties; @@ -117,8 +121,8 @@ public class ModelLoaderConfig implements IConfiguration { // Get list of artifacts artifactTypes = new ArrayList<>(); - if (modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_ARTIFACT_TYPES) != null) { - String[] artTypeList = modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_ARTIFACT_TYPES).split(","); + if (get(PROP_ML_DISTRIBUTION_ARTIFACT_TYPES) != null) { + String[] artTypeList = get(PROP_ML_DISTRIBUTION_ARTIFACT_TYPES).split(","); for (String artType : artTypeList) { artifactTypes.add(artType); } @@ -126,8 +130,8 @@ public class ModelLoaderConfig implements IConfiguration { // Get list of message bus addresses msgBusAddrs = new ArrayList<>(); - if (modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_MSG_BUS_ADDRESSES) != null) { - String[] msgBusList = modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_MSG_BUS_ADDRESSES).split(","); + if (get(PROP_ML_DISTRIBUTION_MSG_BUS_ADDRESSES) != null) { + String[] msgBusList = get(PROP_ML_DISTRIBUTION_MSG_BUS_ADDRESSES).split(","); for (String addr : msgBusList) { msgBusAddrs.add(addr); } @@ -144,53 +148,53 @@ public class ModelLoaderConfig implements IConfiguration { @Override public boolean activateServerTLSAuth() { - String value = modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_ACTIVE_SERVER_TLS_AUTH); + String value = get(PROP_ML_DISTRIBUTION_ACTIVE_SERVER_TLS_AUTH); return value != null && Boolean.parseBoolean(value); } @Override public String getAsdcAddress() { - return modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_ASDC_ADDRESS); + return get(PROP_ML_DISTRIBUTION_ASDC_ADDRESS); } @Override public String getConsumerGroup() { - return modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_CONSUMER_GROUP); + return get(PROP_ML_DISTRIBUTION_CONSUMER_GROUP); } @Override public String getConsumerID() { - return modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_CONSUMER_ID); + return get(PROP_ML_DISTRIBUTION_CONSUMER_ID); } @Override public String getEnvironmentName() { - return modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_ENVIRONMENT_NAME); + return get(PROP_ML_DISTRIBUTION_ENVIRONMENT_NAME); } @Override public String getKeyStorePassword() { - return Password.deobfuscate(modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_KEYSTORE_PASSWORD)); + return getDeobfuscatedValue(get(PROP_ML_DISTRIBUTION_KEYSTORE_PASSWORD)); } @Override public String getKeyStorePath() { - return certLocation + modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_KEYSTORE_FILE); + return certLocation + get(PROP_ML_DISTRIBUTION_KEYSTORE_FILE); } @Override public String getPassword() { - return Password.deobfuscate(modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_PASSWORD)); + return getDeobfuscatedValue(get(PROP_ML_DISTRIBUTION_PASSWORD)); } @Override public int getPollingInterval() { - return Integer.parseInt(modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_POLLING_INTERVAL)); + return Integer.parseInt(get(PROP_ML_DISTRIBUTION_POLLING_INTERVAL)); } @Override public int getPollingTimeout() { - return Integer.parseInt(modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_POLLING_TIMEOUT)); + return Integer.parseInt(get(PROP_ML_DISTRIBUTION_POLLING_TIMEOUT)); } @Override @@ -200,7 +204,7 @@ public class ModelLoaderConfig implements IConfiguration { @Override public String getUser() { - return modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_USER); + return get(PROP_ML_DISTRIBUTION_USER); } @Override @@ -210,7 +214,7 @@ public class ModelLoaderConfig implements IConfiguration { @Override public Boolean isUseHttpsWithDmaap() { - String useHTTPS = modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_HTTPS_WITH_DMAAP); + String useHTTPS = get(PROP_ML_DISTRIBUTION_HTTPS_WITH_DMAAP); return useHTTPS != null && Boolean.valueOf(useHTTPS); } @@ -224,7 +228,7 @@ public class ModelLoaderConfig implements IConfiguration { } public String getBabelKeyStorePath() { - String filename = modelLoaderProperties.getProperty(PROP_BABEL_KEYSTORE_FILE); + String filename = get(PROP_BABEL_KEYSTORE_FILE); if (filename == null) { return null; } else { @@ -233,15 +237,15 @@ public class ModelLoaderConfig implements IConfiguration { } public String getAaiKeyStorePassword() { - return Password.deobfuscate(modelLoaderProperties.getProperty(PROP_AAI_KEYSTORE_PASSWORD)); + return getDeobfuscatedValue(get(PROP_AAI_KEYSTORE_PASSWORD)); } public String getBabelKeyStorePassword() { - return Password.deobfuscate(modelLoaderProperties.getProperty(PROP_BABEL_KEYSTORE_PASSWORD)); + return getDeobfuscatedValue(get(PROP_BABEL_KEYSTORE_PASSWORD)); } public String getBabelTrustStorePath() { - String filename = modelLoaderProperties.getProperty(PROP_BABEL_TRUSTSTORE_FILE); + String filename = get(PROP_BABEL_TRUSTSTORE_FILE); if (filename == null) { return null; } else { @@ -250,19 +254,19 @@ public class ModelLoaderConfig implements IConfiguration { } public String getBabelTrustStorePassword() { - return Password.deobfuscate(modelLoaderProperties.getProperty(PROP_BABEL_TRUSTSTORE_PASSWORD)); + return getDeobfuscatedValue(get(PROP_BABEL_TRUSTSTORE_PASSWORD)); } public String getAaiBaseUrl() { - return modelLoaderProperties.getProperty(PROP_AAI_BASE_URL); + return get(PROP_AAI_BASE_URL); } public String getBabelBaseUrl() { - return modelLoaderProperties.getProperty(PROP_BABEL_BASE_URL); + return get(PROP_BABEL_BASE_URL); } public String getBabelGenerateArtifactsUrl() { - return modelLoaderProperties.getProperty(PROP_BABEL_GENERATE_RESOURCE_URL); + return get(PROP_BABEL_GENERATE_RESOURCE_URL); } public String getAaiModelUrl(String version) { @@ -279,7 +283,7 @@ public class ModelLoaderConfig implements IConfiguration { } public String getAaiAuthenticationUser() { - return modelLoaderProperties.getProperty(PROP_AAI_AUTHENTICATION_USER); + return get(PROP_AAI_AUTHENTICATION_USER); } public String getModelVersion() { @@ -291,20 +295,15 @@ public class ModelLoaderConfig implements IConfiguration { } public boolean useGizmo() { - String useGizmo = modelLoaderProperties.getProperty(PROP_AAI_USE_GIZMO); - - if ( (useGizmo == null) || (!useGizmo.equalsIgnoreCase("true")) ) { - return false; - } - - return true; + String useGizmo = get(PROP_AAI_USE_GIZMO); + return useGizmo != null && useGizmo.equalsIgnoreCase("true"); } /** * @return password for AAI authentication that has been reverse-engineered from its obfuscated form. */ public String getAaiAuthenticationPassword() { - String password = Password.deobfuscate(modelLoaderProperties.getProperty(PROP_AAI_AUTHENTICATION_PASSWORD)); + String password = getDeobfuscatedValue(get(PROP_AAI_AUTHENTICATION_PASSWORD)); if (password != null && password.isEmpty()) { password = null; @@ -317,7 +316,7 @@ public class ModelLoaderConfig implements IConfiguration { * @return a boolean value indicating whether the simulator is enabled. */ public boolean getIngestSimulatorEnabled() { - String propValue = modelLoaderProperties.getProperty(PROP_DEBUG_INGEST_SIMULATOR); + String propValue = get(PROP_DEBUG_INGEST_SIMULATOR); return propValue != null && "enabled".equalsIgnoreCase(propValue); } @@ -326,18 +325,35 @@ public class ModelLoaderConfig implements IConfiguration { */ private String updatePropertyOXMVersion(Properties modelLoaderProperties, String propertyName, String version) { if (version != null) - return modelLoaderProperties.getProperty(propertyName).replace("v*", version); + return get(propertyName).replace("v*", version); else - return modelLoaderProperties.getProperty(propertyName); + return get(propertyName); } /** * @return a boolean value indicating whether model loader is connected to ASDC. */ public boolean getASDCConnectionDisabled() { - String propValue = modelLoaderProperties.getProperty(PROP_ML_DISTRIBUTION_ASDC_CONNECTION_DISABLED); + String propValue = get(PROP_ML_DISTRIBUTION_ASDC_CONNECTION_DISABLED); return propValue != null && "true".equalsIgnoreCase(propValue); } + private String getDeobfuscatedValue(String property) { + if (property.startsWith("OBF:")) { + return Password.deobfuscate(property); + } + + // Property is not obfuscated + return property; + } + + private String get(String key) { + String value = modelLoaderProperties.getProperty(key); + + if(value!= null && value.startsWith("ENV:")) { + value = System.getenv(StringUtils.removeStart(value, "ENV:")); + } + return value; + } }