You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2015/09/01 17:16:29 UTC

[06/28] incubator-brooklyn git commit: Make Brooklyn management context available to config suppliers.

Make Brooklyn management context available to config suppliers.


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/0d401f77
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/0d401f77
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/0d401f77

Branch: refs/heads/master
Commit: 0d401f7712bddafcce493323f6ed559ebe1d6b51
Parents: b8eb3c7
Author: Alasdair Hodge <gi...@alasdairhodge.co.uk>
Authored: Thu Jul 16 09:24:28 2015 +0100
Committer: Alasdair Hodge <gi...@alasdairhodge.co.uk>
Committed: Tue Aug 25 11:51:20 2015 +0100

----------------------------------------------------------------------
 .../config/external/AbstractExternalConfigSupplier.java   | 10 +++++++++-
 .../config/external/InPlaceExternalConfigSupplier.java    |  6 ++++--
 .../external/PropertiesFileExternalConfigSupplier.java    |  5 +++--
 .../internal/BasicExternalConfigSupplierRegistry.java     |  4 ++--
 4 files changed, 18 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/0d401f77/core/src/main/java/brooklyn/config/external/AbstractExternalConfigSupplier.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/config/external/AbstractExternalConfigSupplier.java b/core/src/main/java/brooklyn/config/external/AbstractExternalConfigSupplier.java
index 6aa6967..7f0cec0 100644
--- a/core/src/main/java/brooklyn/config/external/AbstractExternalConfigSupplier.java
+++ b/core/src/main/java/brooklyn/config/external/AbstractExternalConfigSupplier.java
@@ -18,18 +18,26 @@
  */
 package brooklyn.config.external;
 
+import brooklyn.management.ManagementContext;
+
 
 /**
  * Default superclass for all {@link ExternalConfigSupplier} implementations.
  */
 abstract public class AbstractExternalConfigSupplier implements ExternalConfigSupplier {
 
+    private final ManagementContext managementContext;
     private final String name;
 
-    protected AbstractExternalConfigSupplier(String name) {
+    protected AbstractExternalConfigSupplier(ManagementContext managementContext, String name) {
+        this.managementContext = managementContext;
         this.name = name;
     }
 
+    public ManagementContext getManagementContext() {
+        return managementContext;
+    }
+
     public String getName() {
         return name;
     }

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/0d401f77/core/src/main/java/brooklyn/config/external/InPlaceExternalConfigSupplier.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/config/external/InPlaceExternalConfigSupplier.java b/core/src/main/java/brooklyn/config/external/InPlaceExternalConfigSupplier.java
index 2279386..697bc89 100644
--- a/core/src/main/java/brooklyn/config/external/InPlaceExternalConfigSupplier.java
+++ b/core/src/main/java/brooklyn/config/external/InPlaceExternalConfigSupplier.java
@@ -20,6 +20,8 @@ package brooklyn.config.external;
 
 import java.util.Map;
 
+import brooklyn.management.ManagementContext;
+
 
 /**
  * Instances are populated via sub-keys specified directly in the <tt>brooklyn.properties</tt> file:
@@ -37,8 +39,8 @@ public class InPlaceExternalConfigSupplier extends AbstractExternalConfigSupplie
 
     private final Map<?,?> config;
 
-    public InPlaceExternalConfigSupplier(String name, Map<?, ?> config) {
-        super(name);
+    public InPlaceExternalConfigSupplier(ManagementContext managementContext, String name, Map<?, ?> config) {
+        super(managementContext, name);
         this.config = config;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/0d401f77/core/src/main/java/brooklyn/config/external/PropertiesFileExternalConfigSupplier.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/config/external/PropertiesFileExternalConfigSupplier.java b/core/src/main/java/brooklyn/config/external/PropertiesFileExternalConfigSupplier.java
index a4d48d9..34a67c4 100644
--- a/core/src/main/java/brooklyn/config/external/PropertiesFileExternalConfigSupplier.java
+++ b/core/src/main/java/brooklyn/config/external/PropertiesFileExternalConfigSupplier.java
@@ -24,6 +24,7 @@ import java.net.URL;
 import java.util.Map;
 import java.util.Properties;
 
+import brooklyn.management.ManagementContext;
 import brooklyn.util.stream.Streams;
 
 
@@ -42,8 +43,8 @@ public class PropertiesFileExternalConfigSupplier extends AbstractExternalConfig
 
     private final Properties properties;
 
-    public PropertiesFileExternalConfigSupplier(String name, Map<?, ?> config) throws IOException {
-        super(name);
+    public PropertiesFileExternalConfigSupplier(ManagementContext managementContext, String name, Map<?, ?> config) throws IOException {
+        super(managementContext, name);
         this.properties = loadProperties((String) config.get(PROPERTIES_URL));
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/0d401f77/core/src/main/java/brooklyn/management/internal/BasicExternalConfigSupplierRegistry.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/management/internal/BasicExternalConfigSupplierRegistry.java b/core/src/main/java/brooklyn/management/internal/BasicExternalConfigSupplierRegistry.java
index 16f7ed5..8d81d69 100644
--- a/core/src/main/java/brooklyn/management/internal/BasicExternalConfigSupplierRegistry.java
+++ b/core/src/main/java/brooklyn/management/internal/BasicExternalConfigSupplierRegistry.java
@@ -103,8 +103,8 @@ public class BasicExternalConfigSupplierRegistry implements ExternalConfigSuppli
 
             try {
                 Class<? extends ExternalConfigSupplier> providerClass = (Class<? extends ExternalConfigSupplier>) classloader.loadClass(providerClassname);
-                Constructor<? extends ExternalConfigSupplier> constructor = providerClass.getConstructor(String.class, Map.class);
-                ExternalConfigSupplier configSupplier = constructor.newInstance(name, config);
+                Constructor<? extends ExternalConfigSupplier> constructor = providerClass.getConstructor(ManagementContext.class, String.class, Map.class);
+                ExternalConfigSupplier configSupplier = constructor.newInstance(this, name, config);
                 addProvider(name, configSupplier);
 
             } catch (Exception e) {