use of org.apache.commons.configuration.SystemConfiguration in project archaius by Netflix.
the class ConfigurationManager method createDefaultConfigInstance.
private static AbstractConfiguration createDefaultConfigInstance() {
ConcurrentCompositeConfiguration config = new ConcurrentCompositeConfiguration();
try {
DynamicURLConfiguration defaultURLConfig = new DynamicURLConfiguration();
config.addConfiguration(defaultURLConfig, URL_CONFIG_NAME);
} catch (Throwable e) {
logger.warn("Failed to create default dynamic configuration", e);
}
if (!Boolean.getBoolean(DISABLE_DEFAULT_SYS_CONFIG)) {
SystemConfiguration sysConfig = new SystemConfiguration();
config.addConfiguration(sysConfig, SYS_CONFIG_NAME);
}
if (!Boolean.getBoolean(DISABLE_DEFAULT_ENV_CONFIG)) {
EnvironmentConfiguration envConfig = new EnvironmentConfiguration();
config.addConfiguration(envConfig, ENV_CONFIG_NAME);
}
ConcurrentCompositeConfiguration appOverrideConfig = new ConcurrentCompositeConfiguration();
config.addConfiguration(appOverrideConfig, APPLICATION_PROPERTIES);
config.setContainerConfigurationIndex(config.getIndexOfConfiguration(appOverrideConfig));
return config;
}
use of org.apache.commons.configuration.SystemConfiguration in project OpenAttestation by OpenAttestation.
the class TAConfig method gatherConfiguration.
private Configuration gatherConfiguration(String propertiesFilename, Properties defaults) {
CompositeConfiguration composite = new CompositeConfiguration();
// first priority are properties defined on the current JVM (-D switch or through web container)
SystemConfiguration system = new SystemConfiguration();
dumpConfiguration(system, "system");
composite.addConfiguration(system);
// second priority are properties defined on the classpath (like user's home directory)
try {
// user's home directory (assuming it's on the classpath!)
readPropertiesFile("/" + propertiesFilename, composite);
} catch (IOException ex) {
log.info("Did not find " + propertiesFilename + " on classpath", ex);
}
// third priority are properties defined in standard install location
System.out.println("TAConfig os.name=" + System.getProperty("os.name"));
ArrayList<File> files = new ArrayList<File>();
// windows-specific location
if (System.getProperty("os.name", "").toLowerCase().equals("win")) {
System.out.println("TAConfig user.home=" + System.getProperty("user.home"));
files.add(new File("C:" + File.separator + "Intel" + File.separator + "CloudSecurity" + File.separator + propertiesFilename));
files.add(new File(System.getProperty("user.home") + File.separator + propertiesFilename));
}
// linux-specific location
if (System.getProperty("os.name", "").toLowerCase().equals("linux") || System.getProperty("os.name", "").toLowerCase().equals("unix")) {
files.add(new File("./config/" + propertiesFilename));
files.add(new File("/etc/oat-client/" + propertiesFilename));
}
// this line specific to TA for backwards compatibility, not needed in AS/AH
files.add(new File(System.getProperty("app.path") + File.separator + propertiesFilename));
// add all the files we found
for (File f : files) {
try {
if (f.exists() && f.canRead()) {
PropertiesConfiguration standard = new PropertiesConfiguration(f);
dumpConfiguration(standard, "file:" + f.getAbsolutePath());
composite.addConfiguration(standard);
}
} catch (ConfigurationException ex) {
log.error(null, ex);
}
}
// last priority are the defaults that were passed in, we use them if no better source was found
if (defaults != null) {
MapConfiguration defaultconfig = new MapConfiguration(defaults);
dumpConfiguration(defaultconfig, "default");
composite.addConfiguration(defaultconfig);
}
dumpConfiguration(composite, "composite");
return composite;
}
use of org.apache.commons.configuration.SystemConfiguration in project java-chassis by ServiceComb.
the class SSLOptionTest method testSSLOptionYamlOption2.
@Test
public void testSSLOptionYamlOption2() throws Exception {
System.setProperty("ssl.protocols", "TLSv1.2");
YAMLConfigurationSource configSource = new YAMLConfigurationSource();
DynamicConfiguration configFromYamlFile = new DynamicConfiguration(configSource, new NeverStartPollingScheduler());
// configuration from system properties
ConcurrentMapConfiguration configFromSystemProperties = new ConcurrentMapConfiguration(new SystemConfiguration());
ConcurrentCompositeConfiguration finalConfig = new ConcurrentCompositeConfiguration();
finalConfig.addConfiguration(configFromSystemProperties, "systemEnvConfig");
finalConfig.addConfiguration(configFromYamlFile, "configFromYamlFile");
SSLOption option = SSLOption.buildFromYaml("server", finalConfig);
String protocols = option.getProtocols();
option.setProtocols(protocols);
Assert.assertEquals("TLSv1.2", protocols);
System.getProperties().clear();
}
use of org.apache.commons.configuration.SystemConfiguration in project java-chassis by ServiceComb.
the class SSLOptionTest method testSSLOptionYamlOption.
@Test
public void testSSLOptionYamlOption() throws Exception {
YAMLConfigurationSource configSource = new YAMLConfigurationSource();
DynamicConfiguration configFromYamlFile = new DynamicConfiguration(configSource, new NeverStartPollingScheduler());
// configuration from system properties
ConcurrentMapConfiguration configFromSystemProperties = new ConcurrentMapConfiguration(new SystemConfiguration());
ConcurrentCompositeConfiguration finalConfig = new ConcurrentCompositeConfiguration();
finalConfig.addConfiguration(configFromSystemProperties, "systemEnvConfig");
finalConfig.addConfiguration(configFromYamlFile, "configFromYamlFile");
SSLOption option = SSLOption.buildFromYaml("server", finalConfig);
String protocols = option.getProtocols();
option.setProtocols(protocols);
Assert.assertEquals("TLSv1.2,TLSv1.1,TLSv1,SSLv2Hello", protocols);
String ciphers = option.getCiphers();
option.setCiphers(ciphers);
Assert.assertEquals("TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SH" + "A,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA", ciphers);
boolean authPeer = option.isAuthPeer();
option.setAuthPeer(authPeer);
Assert.assertEquals(true, authPeer);
boolean checkCNHost = option.isCheckCNHost();
option.setCheckCNHost(checkCNHost);
Assert.assertEquals(true, checkCNHost);
boolean checkCNWhite = option.isCheckCNWhite();
option.setCheckCNWhite(checkCNWhite);
Assert.assertEquals(true, checkCNWhite);
String checkCNWhiteFile = option.getCheckCNWhiteFile();
option.setCheckCNWhiteFile(checkCNWhiteFile);
Assert.assertEquals("white.list", checkCNWhiteFile);
boolean allowRenegociate = option.isAllowRenegociate();
option.setAllowRenegociate(allowRenegociate);
Assert.assertEquals(false, allowRenegociate);
String storePath = option.getStorePath();
option.setStorePath(storePath);
Assert.assertEquals("internal", storePath);
String trustStore = option.getTrustStore();
option.setTrustStore(trustStore);
Assert.assertEquals("trust.jks", trustStore);
String trustStoreType = option.getTrustStoreType();
option.setTrustStoreType(trustStoreType);
Assert.assertEquals("JKS", trustStoreType);
String trustStoreValue = option.getTrustStoreValue();
option.setTrustStoreValue(trustStoreValue);
Assert.assertEquals("Changeme_123", trustStoreValue);
String keyStore = option.getKeyStore();
option.setKeyStore(keyStore);
Assert.assertEquals("server.p12", keyStore);
String keyStoreType = option.getKeyStoreType();
option.setKeyStoreType(keyStoreType);
Assert.assertEquals("PKCS12", keyStoreType);
String keyStoreValue = option.getKeyStoreValue();
option.setKeyStoreValue(keyStoreValue);
Assert.assertEquals("Changeme_123", keyStoreValue);
String crl = option.getCrl();
option.setCrl(crl);
Assert.assertEquals("revoke.crl", crl);
option.setSslCustomClass("123");
SSLCustom custom = SSLCustom.createSSLCustom(option.getSslCustomClass());
Assert.assertArrayEquals(custom.decode("123".toCharArray()), "123".toCharArray());
}
use of org.apache.commons.configuration.SystemConfiguration in project java-chassis by ServiceComb.
the class SSLOptionTest method testSSLOptionYaml.
@Test
public void testSSLOptionYaml() {
// configuration from yaml files: default microservice.yaml
DynamicConfiguration configFromYamlFile = new DynamicConfiguration(new YAMLConfigurationSource(), new FixedDelayPollingScheduler());
// configuration from system properties
ConcurrentMapConfiguration configFromSystemProperties = new ConcurrentMapConfiguration(new SystemConfiguration());
// create a hierarchy of configuration that makes
// 1) dynamic configuration source override system properties
ConcurrentCompositeConfiguration finalConfig = new ConcurrentCompositeConfiguration();
finalConfig.addConfiguration(configFromSystemProperties, "systemEnvConfig");
finalConfig.addConfiguration(configFromYamlFile, "configFromYamlFile");
ConfigurationManager.install(finalConfig);
SSLOption option = SSLOption.buildFromYaml("server");
String protocols = option.getProtocols();
option.setProtocols(protocols);
Assert.assertEquals("TLSv1.2,TLSv1.1,TLSv1,SSLv2Hello", protocols);
String ciphers = option.getCiphers();
option.setCiphers(ciphers);
Assert.assertEquals("TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SH" + "A,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA", ciphers);
boolean authPeer = option.isAuthPeer();
option.setAuthPeer(authPeer);
Assert.assertEquals(true, authPeer);
boolean checkCNHost = option.isCheckCNHost();
option.setCheckCNHost(checkCNHost);
Assert.assertEquals(true, checkCNHost);
boolean checkCNWhite = option.isCheckCNWhite();
option.setCheckCNWhite(checkCNWhite);
Assert.assertEquals(true, checkCNWhite);
String checkCNWhiteFile = option.getCheckCNWhiteFile();
option.setCheckCNWhiteFile(checkCNWhiteFile);
Assert.assertEquals("white.list", checkCNWhiteFile);
boolean allowRenegociate = option.isAllowRenegociate();
option.setAllowRenegociate(allowRenegociate);
Assert.assertEquals(false, allowRenegociate);
String storePath = option.getStorePath();
option.setStorePath(storePath);
Assert.assertEquals("internal", storePath);
String trustStore = option.getTrustStore();
option.setTrustStore(trustStore);
Assert.assertEquals("trust.jks", trustStore);
String trustStoreType = option.getTrustStoreType();
option.setTrustStoreType(trustStoreType);
Assert.assertEquals("JKS", trustStoreType);
String trustStoreValue = option.getTrustStoreValue();
option.setTrustStoreValue(trustStoreValue);
Assert.assertEquals("Changeme_123", trustStoreValue);
String keyStore = option.getKeyStore();
option.setKeyStore(keyStore);
Assert.assertEquals("server.p12", keyStore);
String keyStoreType = option.getKeyStoreType();
option.setKeyStoreType(keyStoreType);
Assert.assertEquals("PKCS12", keyStoreType);
String keyStoreValue = option.getKeyStoreValue();
option.setKeyStoreValue(keyStoreValue);
Assert.assertEquals("Changeme_123", keyStoreValue);
String crl = option.getCrl();
option.setCrl(crl);
Assert.assertEquals("revoke.crl", crl);
option.setSslCustomClass("123");
SSLCustom custom = SSLCustom.createSSLCustom(option.getSslCustomClass());
Assert.assertArrayEquals(custom.decode("123".toCharArray()), "123".toCharArray());
}
Aggregations