brooklyn-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From henev...@apache.org
Subject [1/2] brooklyn-server git commit: Adds deprecated decorate method to preserve backwards compatibility with BrooklynEntityDecorationResolver
Date Wed, 31 Aug 2016 00:44:56 GMT
Repository: brooklyn-server
Updated Branches:
  refs/heads/master 4ed0e6e7b -> 88192c1f1


Adds deprecated decorate method to preserve backwards compatibility with BrooklynEntityDecorationResolver


Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/7d50ae15
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/7d50ae15
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/7d50ae15

Branch: refs/heads/master
Commit: 7d50ae153886073e227b9a602cf90bf101df4bdb
Parents: 9679a38
Author: Andrew Donald Kennedy <andrew.kennedy@cloudsoftcorp.com>
Authored: Wed Aug 31 01:25:09 2016 +0100
Committer: Andrew Donald Kennedy <andrew.kennedy@cloudsoftcorp.com>
Committed: Wed Aug 31 01:33:17 2016 +0100

----------------------------------------------------------------------
 .../BrooklynEntityDecorationResolver.java       | 64 ++++++++++++--------
 1 file changed, 40 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7d50ae15/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/creation/BrooklynEntityDecorationResolver.java
----------------------------------------------------------------------
diff --git a/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/creation/BrooklynEntityDecorationResolver.java
b/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/creation/BrooklynEntityDecorationResolver.java
index 9e6ed8c..befe875 100644
--- a/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/creation/BrooklynEntityDecorationResolver.java
+++ b/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/creation/BrooklynEntityDecorationResolver.java
@@ -22,9 +22,9 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
-import com.google.common.annotations.Beta;
 import com.google.common.base.Function;
 import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableSet;
 
 import org.apache.brooklyn.api.entity.EntityInitializer;
 import org.apache.brooklyn.api.entity.EntitySpec;
@@ -46,22 +46,28 @@ import org.apache.brooklyn.util.guava.Maybe;
 
 /**
  * Pattern for resolving "decorations" on service specs / entity specs, such as policies,
enrichers, etc.
+ *
  * @since 0.7.0
  */
-@Beta
 public abstract class BrooklynEntityDecorationResolver<DT> {
 
     public final BrooklynYamlTypeInstantiator.Factory instantiator;
-    
+
     protected BrooklynEntityDecorationResolver(BrooklynYamlTypeInstantiator.Factory instantiator)
{
         this.instantiator = instantiator;
     }
-    
+
+    /** @deprected since 0.10.0 - use {@link #decorate(EntitySpec<?>, ConfigBag, Set<String>)}
*/
+    @Deprecated
+    public final void decorate(EntitySpec<?> entitySpec, ConfigBag attrs) {
+        decorate(entitySpec, attrs, ImmutableSet.<String>of());
+    }
+
     public abstract void decorate(EntitySpec<?> entitySpec, ConfigBag attrs, Set<String>
encounteredRegisteredTypeIds);
 
     protected List<? extends DT> buildListOfTheseDecorationsFromEntityAttributes(ConfigBag
attrs) {
         Object value = getDecorationAttributeJsonValue(attrs); 
-        if (value==null) return MutableList.of();
+        if (value==null) { return MutableList.of(); }
         if (value instanceof Iterable) {
             return buildListOfTheseDecorationsFromIterable((Iterable<?>)value);
         } else {
@@ -72,40 +78,47 @@ public abstract class BrooklynEntityDecorationResolver<DT> {
     }
 
     protected Map<?,?> checkIsMap(Object decorationJson) {
-        if (!(decorationJson instanceof Map))
+        if (!(decorationJson instanceof Map)) {
             throw new IllegalArgumentException(getDecorationKind()+" value must be a Map,
not " + 
                 (decorationJson==null ? null : decorationJson.getClass()) );
+        }
         return (Map<?,?>) decorationJson;
     }
 
     protected List<DT> buildListOfTheseDecorationsFromIterable(Iterable<?> value)
{
         List<DT> decorations = MutableList.of();
-        for (Object decorationJson: value)
+        for (Object decorationJson : value) {
             addDecorationFromJsonMap(checkIsMap(decorationJson), decorations);
+        }
         return decorations;
     }
 
     protected abstract String getDecorationKind();
+
     protected abstract Object getDecorationAttributeJsonValue(ConfigBag attrs);
-    
-    /** creates and adds decorations from the given json to the given collection; 
-     * default impl requires a map and calls {@link #addDecorationFromJsonMap(Map, List)}
*/
+
+    /**
+     * Creates and adds decorations from the given json to the given collection; 
+     * default impl requires a map and calls {@link #addDecorationFromJsonMap(Map, List)}
+     */
     protected void addDecorationFromJson(Object decorationJson, List<DT> decorations)
{
         addDecorationFromJsonMap(checkIsMap(decorationJson), decorations);
     }
+
     protected abstract void addDecorationFromJsonMap(Map<?,?> decorationJson, List<DT>
decorations);
-    
 
     public static class PolicySpecResolver extends BrooklynEntityDecorationResolver<PolicySpec<?>>
{
-        
+
         public PolicySpecResolver(BrooklynYamlTypeInstantiator.Factory loader) { super(loader);
}
-        @Override protected String getDecorationKind() { return "Policy"; }
+
+        @Override
+        protected String getDecorationKind() { return "Policy"; }
 
         @Override
         public void decorate(EntitySpec<?> entitySpec, ConfigBag attrs, Set<String>
encounteredRegisteredTypeIds) {
             entitySpec.policySpecs(buildListOfTheseDecorationsFromEntityAttributes(attrs));
         }
-        
+
         @Override
         protected Object getDecorationAttributeJsonValue(ConfigBag attrs) {
             return attrs.getStringKey(BrooklynCampReservedKeys.BROOKLYN_POLICIES);
@@ -117,7 +130,7 @@ public abstract class BrooklynEntityDecorationResolver<DT> {
 
             String policyType = decoLoader.getTypeName().get();
             ManagementContext mgmt = instantiator.loader.getManagementContext();
-            
+
             Maybe<RegisteredType> item = RegisteredTypes.tryValidate(mgmt.getTypeRegistry().get(policyType),
RegisteredTypeLoadingContexts.spec(Policy.class));
             PolicySpec<?> spec;
             if (!item.isNull()) {
@@ -128,21 +141,23 @@ public abstract class BrooklynEntityDecorationResolver<DT> {
                 spec = PolicySpec.create(type)
                         .parameters(BasicSpecParameter.fromClass(mgmt, type));
             }
-            spec.configure( decoLoader.getConfigMap() );
+            spec.configure(decoLoader.getConfigMap());
             decorations.add(spec);
         }
     }
 
     public static class EnricherSpecResolver extends BrooklynEntityDecorationResolver<EnricherSpec<?>>
{
-        
+
         public EnricherSpecResolver(BrooklynYamlTypeInstantiator.Factory loader) { super(loader);
}
-        @Override protected String getDecorationKind() { return "Enricher"; }
+
+        @Override
+        protected String getDecorationKind() { return "Enricher"; }
 
         @Override
         public void decorate(EntitySpec<?> entitySpec, ConfigBag attrs, Set<String>
encounteredRegisteredTypeIds) {
             entitySpec.enricherSpecs(buildListOfTheseDecorationsFromEntityAttributes(attrs));
         }
-        
+
         @Override
         protected Object getDecorationAttributeJsonValue(ConfigBag attrs) {
             return attrs.getStringKey(BrooklynCampReservedKeys.BROOKLYN_ENRICHERS);
@@ -157,17 +172,19 @@ public abstract class BrooklynEntityDecorationResolver<DT> {
                 .parameters(BasicSpecParameter.fromClass(instantiator.loader.getManagementContext(),
type)));
         }
     }
-    
+
     public static class InitializerResolver extends BrooklynEntityDecorationResolver<EntityInitializer>
{
-        
+
         public InitializerResolver(BrooklynYamlTypeInstantiator.Factory loader) { super(loader);
}
-        @Override protected String getDecorationKind() { return "Entity initializer"; }
+
+        @Override 
+        protected String getDecorationKind() { return "Entity initializer"; }
 
         @Override
         public void decorate(EntitySpec<?> entitySpec, ConfigBag attrs, Set<String>
encounteredRegisteredTypeIds) {
             entitySpec.addInitializers(buildListOfTheseDecorationsFromEntityAttributes(attrs));
         }
-        
+
         @Override
         protected Object getDecorationAttributeJsonValue(ConfigBag attrs) {
             return attrs.getStringKey(BrooklynCampReservedKeys.BROOKLYN_INITIALIZERS);
@@ -211,5 +228,4 @@ public abstract class BrooklynEntityDecorationResolver<DT> {
             throw new IllegalStateException("Not called");
         }
     }
-
 }


Mime
View raw message