This is an automated email from the ASF dual-hosted git repository.
iuliana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/brooklyn-server.git
The following commit(s) were added to refs/heads/master by this push:
new adacc25 Use raw config for initializers
new 694a87d Merge pull request #1271 from duncangrant/groups-change-policy
adacc25 is described below
commit adacc2577e913bf7f28a22703c2a3943ea5d5f0e
Author: Duncan Grant <[email protected]>
AuthorDate: Thu Nov 4 15:39:59 2021 +0000
Use raw config for initializers
Otherwise initializer config initialized against group not member
---
.../brooklyn/entity/group/GroupsChangePolicy.java | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git
a/core/src/main/java/org/apache/brooklyn/entity/group/GroupsChangePolicy.java
b/core/src/main/java/org/apache/brooklyn/entity/group/GroupsChangePolicy.java
index 7715689..21d046a 100644
---
a/core/src/main/java/org/apache/brooklyn/entity/group/GroupsChangePolicy.java
+++
b/core/src/main/java/org/apache/brooklyn/entity/group/GroupsChangePolicy.java
@@ -99,9 +99,7 @@ public class GroupsChangePolicy extends
AbstractMembershipTrackingPolicy {
super.onEntityAdded(member);
ManagementContext mgmt = getManagementContext();
- Maybe<Object> rawPolicies = config().getRaw(POLICIES);
- List<Map<String, Object>> policyDefinitions = rawPolicies.isPresent()
? (List<Map<String, Object>>) rawPolicies.get() : ImmutableList.of();
- policyDefinitions.forEach(
+ getMaps(POLICIES).forEach(
stringObjectMap -> {
String type = (String) stringObjectMap.get("type");
@@ -121,22 +119,19 @@ public class GroupsChangePolicy extends
AbstractMembershipTrackingPolicy {
}
);
- config().get(INITIALIZERS).forEach(
+ getMaps(INITIALIZERS).forEach(
stringObjectMap -> {
try {
- OsgiBrooklynClassLoadingContext loader = entity !=
null ? new OsgiBrooklynClassLoadingContext(entity) : null;
+ OsgiBrooklynClassLoadingContext loader = member !=
null ? new OsgiBrooklynClassLoadingContext(member) : null;
EntityInitializer initializer =
BeanWithTypeUtils.tryConvertOrAbsent(mgmt,Maybe.of(stringObjectMap),
TypeToken.of(EntityInitializer.class), true, loader, true).get();
initializer.apply((EntityInternal) member);
}catch(Throwable e){
- e.printStackTrace();
throw Exceptions.propagate(e);
}
}
);
- Maybe<Object> rawEnrichers = config().getRaw(ENRICHERS);
- List<Map<String, Object>> enricherDefinitions =
rawEnrichers.isPresent() ? (List<Map<String, Object>>) rawEnrichers.get() :
ImmutableList.of();
- enricherDefinitions.forEach(
+ getMaps(ENRICHERS).forEach(
stringObjectMap -> {
String type = (String) stringObjectMap.get("type");
Maybe<RegisteredType> item =
RegisteredTypes.tryValidate(mgmt.getTypeRegistry().get(type),
RegisteredTypeLoadingContexts.spec(BrooklynObjectType.ENRICHER.getInterfaceType()));
@@ -154,4 +149,9 @@ public class GroupsChangePolicy extends
AbstractMembershipTrackingPolicy {
}
);
}
+
+ private List<Map<String, Object>> getMaps(ConfigKey<List<Map<String,
Object>>> key) {
+ Maybe<Object> rawInitializers = config().getRaw(key);
+ return rawInitializers.isPresent() ? (List<Map<String, Object>>)
rawInitializers.get() : ImmutableList.of();
+ }
}