[1/2] brooklyn-library git commit: Fix NPE generating Nginx config when no SSL configured
Repository: brooklyn-library Updated Branches: refs/heads/master 69efaf576 -> 138f6b32e Fix NPE generating Nginx config when no SSL configured Project: http://git-wip-us.apache.org/repos/asf/brooklyn-library/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-library/commit/03fede0d Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-library/tree/03fede0d Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-library/diff/03fede0d Branch: refs/heads/master Commit: 03fede0de3699a0a663d244c21ab1e3288573133 Parents: 69efaf5 Author: Andrew Donald Kennedy Authored: Mon Aug 15 12:18:32 2016 +0100 Committer: Andrew Donald Kennedy Committed: Mon Aug 15 12:18:32 2016 +0100 -- .../brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/03fede0d/software/webapp/src/main/java/org/apache/brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java -- diff --git a/software/webapp/src/main/java/org/apache/brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java b/software/webapp/src/main/java/org/apache/brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java index bbe81aa..341bf67 100644 --- a/software/webapp/src/main/java/org/apache/brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java +++ b/software/webapp/src/main/java/org/apache/brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java @@ -78,7 +78,9 @@ public class NginxDefaultConfigGenerator implements NginxConfigFileGenerator { config.append(" }\n"); config.append(" server {\n"); config.append(getCodeForServerConfig()); -appendCodeForProxySSLConfig(nginx.getId(), config, "", globalSslConfig); +if (globalSslConfig != null) { +appendCodeForProxySSLConfig(nginx.getId(), config, "", globalSslConfig); +} config.append("listen "+nginx.getPort()+";\n"); if (nginx.getDomain()!=null) config.append("server_name "+nginx.getDomain()+";\n");
[2/2] brooklyn-library git commit: This closes #59
This closes #59 * github/pr/59: Fix NPE generating Nginx config when no SSL configured Project: http://git-wip-us.apache.org/repos/asf/brooklyn-library/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-library/commit/138f6b32 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-library/tree/138f6b32 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-library/diff/138f6b32 Branch: refs/heads/master Commit: 138f6b32ebfe8a9d6da4b1324b4f3a481c0756aa Parents: 69efaf5 03fede0 Author: Andrew Donald Kennedy Authored: Mon Aug 15 14:15:56 2016 +0100 Committer: Andrew Donald Kennedy Committed: Mon Aug 15 14:15:56 2016 +0100 -- .../brooklyn/entity/proxy/nginx/NginxDefaultConfigGenerator.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) --
[4/4] brooklyn-server git commit: This closes #291
This closes #291 Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/374e01f4 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/374e01f4 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/374e01f4 Branch: refs/heads/master Commit: 374e01f41812fcb82af3d3e2ee9b9b863e4c06e2 Parents: 215c02c 26af0a2 Author: Aled Sage Authored: Mon Aug 15 11:31:13 2016 +0100 Committer: Aled Sage Committed: Mon Aug 15 11:31:13 2016 +0100 -- .../spi/dsl/methods/BrooklynDslCommon.java | 133 +++ .../brooklyn/camp/brooklyn/ObjectsYamlTest.java | 64 + .../brooklyn/core/entity/EntityFunctions.java | 54 +++- .../brooklyn/core/entity/EntityPredicates.java | 72 -- .../core/entity/EntityFunctionsTest.java| 14 +- .../core/entity/EntityPredicatesTest.java | 58 ++-- 6 files changed, 348 insertions(+), 47 deletions(-) --
[3/4] brooklyn-server git commit: Improved $brooklyn:object() DSL.
Improved $brooklyn:object() DSL. - Support parameterised constructors - Support static factory methods Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/26af0a21 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/26af0a21 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/26af0a21 Branch: refs/heads/master Commit: 26af0a214f4ecfd593e821bf77bac5d9b8c7d116 Parents: f3f3993 Author: Alasdair Hodge Authored: Fri Aug 5 14:26:55 2016 +0100 Committer: Alasdair Hodge Committed: Fri Aug 5 15:46:49 2016 +0100 -- .../spi/dsl/methods/BrooklynDslCommon.java | 133 +++ .../brooklyn/camp/brooklyn/ObjectsYamlTest.java | 64 + 2 files changed, 173 insertions(+), 24 deletions(-) -- http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/26af0a21/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/dsl/methods/BrooklynDslCommon.java -- diff --git a/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/dsl/methods/BrooklynDslCommon.java b/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/dsl/methods/BrooklynDslCommon.java index 23cc3a3..d6dfddd 100644 --- a/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/dsl/methods/BrooklynDslCommon.java +++ b/camp/camp-brooklyn/src/main/java/org/apache/brooklyn/camp/brooklyn/spi/dsl/methods/BrooklynDslCommon.java @@ -19,6 +19,7 @@ package org.apache.brooklyn.camp.brooklyn.spi.dsl.methods; import static com.google.common.base.Preconditions.checkNotNull; +import static org.apache.brooklyn.camp.brooklyn.spi.dsl.DslUtils.resolved; import java.util.Arrays; import java.util.Iterator; @@ -38,10 +39,8 @@ import org.apache.brooklyn.camp.brooklyn.BrooklynCampReservedKeys; import org.apache.brooklyn.camp.brooklyn.spi.creation.BrooklynYamlTypeInstantiator; import org.apache.brooklyn.camp.brooklyn.spi.creation.EntitySpecConfiguration; import org.apache.brooklyn.camp.brooklyn.spi.dsl.BrooklynDslDeferredSupplier; -import org.apache.brooklyn.camp.brooklyn.spi.dsl.DslUtils; import org.apache.brooklyn.camp.brooklyn.spi.dsl.methods.DslComponent.Scope; import org.apache.brooklyn.core.config.external.ExternalConfigSupplier; -import org.apache.brooklyn.core.entity.AbstractEntity; import org.apache.brooklyn.core.entity.EntityDynamicType; import org.apache.brooklyn.core.entity.EntityInternal; import org.apache.brooklyn.core.mgmt.internal.ExternalConfigSupplierRegistry; @@ -66,6 +65,7 @@ import org.slf4j.LoggerFactory; import com.google.common.base.Function; import com.google.common.base.Objects; +import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; @@ -178,6 +178,9 @@ public class BrooklynDslCommon { public static Object object(Map arguments) { ConfigBag config = ConfigBag.newInstance(arguments); String typeName = BrooklynYamlTypeInstantiator.InstantiatorFromKey.extractTypeName("object", config).orNull(); +List constructorArgs = (List) config.getStringKeyMaybe("constructor.args").or(ImmutableList.of()); +String factoryMethodName = (String) config.getStringKeyMaybe("factoryMethod.name").orNull(); +List factoryMethodArgs = (List) config.getStringKeyMaybe("factoryMethod.args").or(ImmutableList.of()); Map objectFields = (Map) config.getStringKeyMaybe("object.fields").or(MutableMap.of()); Map brooklynConfig = (Map) config.getStringKeyMaybe(BrooklynCampReservedKeys.BROOKLYN_CONFIG).or(MutableMap.of()); @@ -187,17 +190,24 @@ public class BrooklynDslCommon { type = new ClassLoaderUtils(BrooklynDslCommon.class).loadClass(mappedTypeName); } catch (ClassNotFoundException e) { LOG.debug("Cannot load class " + typeName + " for DLS object; assuming it is in OSGi bundle; will defer its loading"); -return new DslObject(mappedTypeName, objectFields, brooklynConfig); +return new DslObject(mappedTypeName, constructorArgs, objectFields, brooklynConfig); } if (!Reflections.hasNoArgConstructor(type)) { throw new IllegalStateException(String.format("Cannot construct %s bean: No public no-arg constructor available", type)); } -if ((objectFields.isEmpty() || DslUtils.resolved(objectFields.values())) && -(brooklynConfig.isEmpty() || DslUtils.resolved(brooklynConfig.values( { -return DslObject.create(type, objectFields, brooklynConfig); +if (resolved(constructorArgs) && resolved(factoryMethodArgs) && resolved(objectFields.values()) && resolved(brooklynConfig.valu
[1/4] brooklyn-server git commit: Convenience predicates to test attributes + config by name.
Repository: brooklyn-server Updated Branches: refs/heads/master 215c02cb5 -> 374e01f41 Convenience predicates to test attributes + config by name. Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/f3f39938 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/f3f39938 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/f3f39938 Branch: refs/heads/master Commit: f3f39938d75aaa4ebb1132952493a186399ad30f Parents: 3364786 Author: Alasdair Hodge Authored: Fri Aug 5 14:26:20 2016 +0100 Committer: Alasdair Hodge Committed: Fri Aug 5 15:46:48 2016 +0100 -- .../brooklyn/core/entity/EntityPredicates.java | 72 +--- .../core/entity/EntityPredicatesTest.java | 58 +--- 2 files changed, 112 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f3f39938/core/src/main/java/org/apache/brooklyn/core/entity/EntityPredicates.java -- diff --git a/core/src/main/java/org/apache/brooklyn/core/entity/EntityPredicates.java b/core/src/main/java/org/apache/brooklyn/core/entity/EntityPredicates.java index a618784..41f016c 100644 --- a/core/src/main/java/org/apache/brooklyn/core/entity/EntityPredicates.java +++ b/core/src/main/java/org/apache/brooklyn/core/entity/EntityPredicates.java @@ -29,6 +29,8 @@ import org.apache.brooklyn.api.location.Location; import org.apache.brooklyn.api.sensor.AttributeSensor; import org.apache.brooklyn.config.ConfigKey; import org.apache.brooklyn.config.ConfigKey.HasConfigKey; +import org.apache.brooklyn.core.config.ConfigKeys; +import org.apache.brooklyn.core.sensor.Sensors; import org.apache.brooklyn.util.collections.CollectionFunctionals; import org.apache.brooklyn.util.guava.SerializablePredicate; import org.apache.brooklyn.util.javalang.Reflections; @@ -171,11 +173,35 @@ public class EntityPredicates { } // --- - + +public static Predicate attributeNotNull(final String attributeName) { +return attributeSatisfies(attributeName, Predicates.notNull()); +} + +public static Predicate attributeNotNull(final AttributeSensor attribute) { +return attributeSatisfies(attribute, Predicates.notNull()); +} + +public static Predicate attributeEqualTo(final String attributeName, final Object val) { +return attributeSatisfies(attributeName, Predicates.equalTo(val)); +} + public static Predicate attributeEqualTo(final AttributeSensor attribute, final T val) { return attributeSatisfies(attribute, Predicates.equalTo(val)); } - + +public static Predicate attributeNotEqualTo(final String attributeName, final Object val) { +return attributeSatisfies(attributeName, Predicates.not(Predicates.equalTo(val))); +} + +public static Predicate attributeNotEqualTo(final AttributeSensor attribute, final T val) { +return attributeSatisfies(attribute, Predicates.not(Predicates.equalTo(val))); +} + +public static Predicate attributeSatisfies(final String attributeName, final Predicate condition) { +return new AttributeSatisfies(Sensors.newSensor(Object.class, attributeName), condition); +} + public static Predicate attributeSatisfies(final AttributeSensor attribute, final Predicate condition) { return new AttributeSatisfies(attribute, condition); } @@ -208,24 +234,52 @@ public class EntityPredicates { }; } -public static Predicate attributeNotEqualTo(final AttributeSensor attribute, final T val) { -return attributeSatisfies(attribute, Predicates.not(Predicates.equalTo(val))); +// --- + +public static Predicate configNotNull(final String configKeyName) { +return configSatisfies(configKeyName, Predicates.notNull()); } -// --- +public static Predicate configNotNull(final ConfigKey configKey) { +return configSatisfies(configKey, Predicates.notNull()); +} -public static Predicate configEqualTo(final ConfigKey configKey, final T val) { -return configSatisfies(configKey, Predicates.equalTo(val)); +public static Predicate configNotNull(final HasConfigKey configKey) { +return configNotNull(configKey.getConfigKey()); } -public static Predicate configSatisfies(final ConfigKey configKey, final Predicate condition) { -return new ConfigKeySatisfies(configKey, condition); +public static Predicate configEqualTo(final String configKeyName, final Object val) { +return configSatisfies(configKeyName, Predicates.equalTo(val)); +} + +public static Predicate con
[2/4] brooklyn-server git commit: Convenience functions to access attributes + config by name.
Convenience functions to access attributes + config by name. Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/33647865 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/33647865 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/33647865 Branch: refs/heads/master Commit: 33647865f41649f48ce38cbda41a8cd4d9b0e94b Parents: ddb6acc Author: Alasdair Hodge Authored: Fri Aug 5 14:25:48 2016 +0100 Committer: Alasdair Hodge Committed: Fri Aug 5 15:46:48 2016 +0100 -- .../brooklyn/core/entity/EntityFunctions.java | 54 +++- .../core/entity/EntityFunctionsTest.java| 14 +++-- 2 files changed, 63 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/33647865/core/src/main/java/org/apache/brooklyn/core/entity/EntityFunctions.java -- diff --git a/core/src/main/java/org/apache/brooklyn/core/entity/EntityFunctions.java b/core/src/main/java/org/apache/brooklyn/core/entity/EntityFunctions.java index c65a176..7d8fa3d 100644 --- a/core/src/main/java/org/apache/brooklyn/core/entity/EntityFunctions.java +++ b/core/src/main/java/org/apache/brooklyn/core/entity/EntityFunctions.java @@ -31,7 +31,9 @@ import org.apache.brooklyn.api.mgmt.ManagementContext; import org.apache.brooklyn.api.objs.Identifiable; import org.apache.brooklyn.api.sensor.AttributeSensor; import org.apache.brooklyn.config.ConfigKey; +import org.apache.brooklyn.core.config.ConfigKeys; import org.apache.brooklyn.core.entity.lifecycle.ServiceStateLogic; +import org.apache.brooklyn.core.sensor.Sensors; import org.apache.brooklyn.util.core.flags.TypeCoercions; import org.apache.brooklyn.util.guava.Functionals; @@ -141,7 +143,11 @@ public class EntityFunctions { } return new AppsSupplier(); } - + +public static Function attribute(String attributeName) { +return attribute(Sensors.newSensor(Object.class, attributeName)); +} + public static Function attribute(AttributeSensor attribute) { return new GetEntityAttributeFunction(checkNotNull(attribute, "attribute")); } @@ -156,6 +162,26 @@ public class EntityFunctions { } } +public static Function attribute(String attributeName, String format) { +return attribute(Sensors.newSensor(Object.class, attributeName), format); +} + +public static Function attribute(AttributeSensor attribute, String format) { +return new FormatEntityAttributeFunction(checkNotNull(attribute, "attribute"), checkNotNull(format, "format")); +} + +protected static class FormatEntityAttributeFunction implements Function { +private final AttributeSensor attribute; +private final String format; +protected FormatEntityAttributeFunction(AttributeSensor attribute, String format) { +this.attribute = attribute; +this.format = format; +} +@Override public String apply(Entity input) { +return (input == null) ? null : String.format(format, input.getAttribute(attribute)); +} +} + public static Function attribute(Entity entity, AttributeSensor attribute) { return new GetFixedEntityAttributeFunction<>(entity, attribute); } @@ -172,6 +198,10 @@ public class EntityFunctions { } } +public static Function config(String keyName) { +return config(ConfigKeys.newConfigKey(Object.class, keyName)); +} + public static Function config(ConfigKey key) { return new GetEntityConfigFunction(checkNotNull(key, "key")); } @@ -188,6 +218,28 @@ public class EntityFunctions { } } +public static Function config(String keyName, String format) { +return config(ConfigKeys.newConfigKey(Object.class, keyName), format); +} + +public static Function config(ConfigKey key, String format) { +return new FormatEntityConfigFunction(checkNotNull(key, "key"), checkNotNull(format, "format")); +} + +protected static class FormatEntityConfigFunction implements Function { +private final ConfigKey key; +private final String format; + +protected FormatEntityConfigFunction(ConfigKey key, String format) { +this.key = key; +this.format = format; +} + +@Override public String apply(Entity input) { +return (input == null) ? null : String.format(format, input.getConfig(key)); +} +} + public static Function displayName() { return GetEntityDisplayName.INSTANCE; } http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/33647865/core/src/test/java/org/apache/brooklyn/core/enti