Repository: brooklyn-server Updated Branches: refs/heads/master 9b0fe8a6d -> 89f9dd7a3
Use suppressDuplicates for various sensors Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/2862a39a Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/2862a39a Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/2862a39a Branch: refs/heads/master Commit: 2862a39acc7e42cf78af421debdcaa35e046bc84 Parents: 9b0fe8a Author: Aled Sage <[email protected]> Authored: Wed Mar 30 00:06:17 2016 +0100 Committer: Aled Sage <[email protected]> Committed: Wed Mar 30 00:06:17 2016 +0100 ---------------------------------------------------------------------- .../brooklyn/core/entity/lifecycle/ServiceStateLogic.java | 4 ++++ .../apache/brooklyn/entity/group/AbstractGroupImpl.java | 10 ++++++++-- .../entity/software/base/SameServerEntityImpl.java | 1 + 3 files changed, 13 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/2862a39a/core/src/main/java/org/apache/brooklyn/core/entity/lifecycle/ServiceStateLogic.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/brooklyn/core/entity/lifecycle/ServiceStateLogic.java b/core/src/main/java/org/apache/brooklyn/core/entity/lifecycle/ServiceStateLogic.java index 3eaf022..c8f8400 100644 --- a/core/src/main/java/org/apache/brooklyn/core/entity/lifecycle/ServiceStateLogic.java +++ b/core/src/main/java/org/apache/brooklyn/core/entity/lifecycle/ServiceStateLogic.java @@ -581,6 +581,10 @@ public class ServiceStateLogic { entity.enrichers().add(this); } + public ComputeServiceIndicatorsFromChildrenAndMembersSpec suppressDuplicates(boolean val) { + configure(ComputeServiceIndicatorsFromChildrenAndMembers.SUPPRESS_DUPLICATES, val); + return self(); + } public ComputeServiceIndicatorsFromChildrenAndMembersSpec checkChildrenAndMembers() { configure(ComputeServiceIndicatorsFromChildrenAndMembers.FROM_MEMBERS, true); configure(ComputeServiceIndicatorsFromChildrenAndMembers.FROM_CHILDREN, true); http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/2862a39a/core/src/main/java/org/apache/brooklyn/entity/group/AbstractGroupImpl.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/brooklyn/entity/group/AbstractGroupImpl.java b/core/src/main/java/org/apache/brooklyn/entity/group/AbstractGroupImpl.java index 6b5c02a..672f646 100644 --- a/core/src/main/java/org/apache/brooklyn/entity/group/AbstractGroupImpl.java +++ b/core/src/main/java/org/apache/brooklyn/entity/group/AbstractGroupImpl.java @@ -103,9 +103,15 @@ public abstract class AbstractGroupImpl extends AbstractEntity implements Abstra // check states and upness separately so they can be individually replaced if desired // problem if any children or members are on fire - ServiceStateLogic.newEnricherFromChildrenState().checkChildrenAndMembers().requireRunningChildren(getConfig(RUNNING_QUORUM_CHECK)).addTo(this); + enrichers().add(ServiceStateLogic.newEnricherFromChildrenState() + .checkChildrenAndMembers() + .requireRunningChildren(getConfig(RUNNING_QUORUM_CHECK)) + .suppressDuplicates(true)); // defaults to requiring at least one member or child who is up - ServiceStateLogic.newEnricherFromChildrenUp().checkChildrenAndMembers().requireUpChildren(getConfig(UP_QUORUM_CHECK)).addTo(this); + enrichers().add(ServiceStateLogic.newEnricherFromChildrenUp() + .checkChildrenAndMembers() + .requireUpChildren(getConfig(UP_QUORUM_CHECK)) + .suppressDuplicates(true)); } /** http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/2862a39a/software/base/src/main/java/org/apache/brooklyn/entity/software/base/SameServerEntityImpl.java ---------------------------------------------------------------------- diff --git a/software/base/src/main/java/org/apache/brooklyn/entity/software/base/SameServerEntityImpl.java b/software/base/src/main/java/org/apache/brooklyn/entity/software/base/SameServerEntityImpl.java index 8da252f..2fa424f 100644 --- a/software/base/src/main/java/org/apache/brooklyn/entity/software/base/SameServerEntityImpl.java +++ b/software/base/src/main/java/org/apache/brooklyn/entity/software/base/SameServerEntityImpl.java @@ -47,6 +47,7 @@ public class SameServerEntityImpl extends AbstractEntity implements SameServerEn // Because can have multiple children (similar to groups/clusters/apps), need to // monitor their health and indicate this has failed if any of them have failed. enrichers().add(ServiceStateLogic.newEnricherFromChildren() + .suppressDuplicates(true) .configure(ComputeServiceIndicatorsFromChildrenAndMembers.UP_QUORUM_CHECK, QuorumCheck.QuorumChecks.all())); }
