From 6533e0ca53921f4b1a79767b640e36382ba5b756 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Wed, 15 Aug 2018 14:48:58 -0400 Subject: [PATCH] Makes ContextRefresher easier to extend. Adds protected getters for context and scope. Adds new refreshEnvironment() method. fixes gh-382 --- .../cloud/context/refresh/ContextRefresher.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java b/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java index 8c013556..57076a5e 100644 --- a/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java +++ b/spring-cloud-context/src/main/java/org/springframework/cloud/context/refresh/ContextRefresher.java @@ -56,14 +56,27 @@ public class ContextRefresher { this.scope = scope; } + protected ConfigurableApplicationContext getContext() { + return this.context; + } + + protected RefreshScope getScope() { + return this.scope; + } + public synchronized Set refresh() { + Set keys = refreshEnvironment(); + this.scope.refreshAll(); + return keys; + } + + public synchronized Set refreshEnvironment() { Map before = extract( this.context.getEnvironment().getPropertySources()); addConfigFilesToEnvironment(); Set keys = changes(before, extract(this.context.getEnvironment().getPropertySources())).keySet(); this.context.publishEvent(new EnvironmentChangeEvent(context, keys)); - this.scope.refreshAll(); return keys; }