Updates to compile

parent 08a1f076
...@@ -19,6 +19,7 @@ package org.springframework.cloud.netflix.archaius; ...@@ -19,6 +19,7 @@ package org.springframework.cloud.netflix.archaius;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import javax.annotation.PreDestroy; import javax.annotation.PreDestroy;
...@@ -35,6 +36,7 @@ import org.springframework.boot.actuate.endpoint.Endpoint; ...@@ -35,6 +36,7 @@ import org.springframework.boot.actuate.endpoint.Endpoint;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.cloud.context.environment.EnvironmentChangeEvent; import org.springframework.cloud.context.environment.EnvironmentChangeEvent;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationListener; import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
...@@ -70,12 +72,6 @@ public class ArchaiusAutoConfiguration { ...@@ -70,12 +72,6 @@ public class ArchaiusAutoConfiguration {
private static final AtomicBoolean initialized = new AtomicBoolean(false); private static final AtomicBoolean initialized = new AtomicBoolean(false);
@Autowired
private ConfigurableEnvironment env;
@Autowired(required = false)
private List<AbstractConfiguration> externalConfigurations = new ArrayList<>();
@PreDestroy @PreDestroy
public void close() { public void close() {
setStatic(ConfigurationManager.class, "instance", null); setStatic(ConfigurationManager.class, "instance", null);
...@@ -87,10 +83,12 @@ public class ArchaiusAutoConfiguration { ...@@ -87,10 +83,12 @@ public class ArchaiusAutoConfiguration {
} }
@Bean @Bean
public ConfigurableEnvironmentConfiguration configurableEnvironmentConfiguration() { public static ConfigurableEnvironmentConfiguration configurableEnvironmentConfiguration(ConfigurableEnvironment env,
ConfigurableEnvironmentConfiguration envConfig = new ConfigurableEnvironmentConfiguration( ApplicationContext context) {
this.env); Map<String, AbstractConfiguration> abstractConfigurationMap = context.getBeansOfType(AbstractConfiguration.class);
configureArchaius(envConfig); List<AbstractConfiguration> externalConfigurations = new ArrayList<>(abstractConfigurationMap.values());
ConfigurableEnvironmentConfiguration envConfig = new ConfigurableEnvironmentConfiguration(env);
configureArchaius(envConfig, env, externalConfigurations);
return envConfig; return envConfig;
} }
...@@ -130,9 +128,9 @@ public class ArchaiusAutoConfiguration { ...@@ -130,9 +128,9 @@ public class ArchaiusAutoConfiguration {
} }
} }
protected void configureArchaius(ConfigurableEnvironmentConfiguration envConfig) { protected static void configureArchaius(ConfigurableEnvironmentConfiguration envConfig, ConfigurableEnvironment env, List<AbstractConfiguration> externalConfigurations) {
if (initialized.compareAndSet(false, true)) { if (initialized.compareAndSet(false, true)) {
String appName = this.env.getProperty("spring.application.name"); String appName = env.getProperty("spring.application.name");
if (appName == null) { if (appName == null) {
appName = "application"; appName = "application";
log.warn("No spring.application.name found, defaulting to 'application'"); log.warn("No spring.application.name found, defaulting to 'application'");
...@@ -143,8 +141,8 @@ public class ArchaiusAutoConfiguration { ...@@ -143,8 +141,8 @@ public class ArchaiusAutoConfiguration {
// support to add other Configurations (Jdbc, DynamoDb, Zookeeper, jclouds, // support to add other Configurations (Jdbc, DynamoDb, Zookeeper, jclouds,
// etc...) // etc...)
if (this.externalConfigurations != null) { if (externalConfigurations != null) {
for (AbstractConfiguration externalConfig : this.externalConfigurations) { for (AbstractConfiguration externalConfig : externalConfigurations) {
config.addConfiguration(externalConfig); config.addConfiguration(externalConfig);
} }
} }
...@@ -184,7 +182,7 @@ public class ArchaiusAutoConfiguration { ...@@ -184,7 +182,7 @@ public class ArchaiusAutoConfiguration {
} }
} }
private void addArchaiusConfiguration(ConcurrentCompositeConfiguration config) { private static void addArchaiusConfiguration(ConcurrentCompositeConfiguration config) {
if (ConfigurationManager.isConfigurationInstalled()) { if (ConfigurationManager.isConfigurationInstalled()) {
AbstractConfiguration installedConfiguration = ConfigurationManager AbstractConfiguration installedConfiguration = ConfigurationManager
.getConfigInstance(); .getConfigInstance();
......
...@@ -21,10 +21,10 @@ import org.junit.Before; ...@@ -21,10 +21,10 @@ import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.embedded.LocalServerPort;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.boot.test.web.client.TestRestTemplate;
import org.springframework.boot.web.server.LocalServerPort;
import org.springframework.cloud.netflix.ribbon.RibbonClient; import org.springframework.cloud.netflix.ribbon.RibbonClient;
import org.springframework.cloud.netflix.ribbon.StaticServerList; import org.springframework.cloud.netflix.ribbon.StaticServerList;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
......
...@@ -59,6 +59,11 @@ ...@@ -59,6 +59,11 @@
<optional>true</optional> <optional>true</optional>
</dependency> </dependency>
<dependency> <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.springframework.integration</groupId> <groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-core</artifactId> <artifactId>spring-integration-core</artifactId>
</dependency> </dependency>
......
...@@ -36,12 +36,12 @@ ...@@ -36,12 +36,12 @@
<dependency> <dependency>
<groupId>commons-configuration</groupId> <groupId>commons-configuration</groupId>
<artifactId>commons-configuration</artifactId> <artifactId>commons-configuration</artifactId>
<exclusions> <!--<exclusions>
<exclusion> <exclusion>
<groupId>commons-logging</groupId> <groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId> <artifactId>commons-logging</artifactId>
</exclusion> </exclusion>
</exclusions> </exclusions>-->
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId> <groupId>com.fasterxml.jackson.core</groupId>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment