You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by sj...@apache.org on 2015/09/17 15:27:54 UTC
[2/7] incubator-brooklyn git commit: subscribe to the ROOT_USERNAME
sensor from children of replica set
subscribe to the ROOT_USERNAME sensor from children of replica set
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/3bb9cfc9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/3bb9cfc9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/3bb9cfc9
Branch: refs/heads/master
Commit: 3bb9cfc91a5b46a09890aa30dcd24acd3dfbbfab
Parents: 16b8b1e
Author: Robert Moss <ro...@gmail.com>
Authored: Tue Sep 15 15:38:29 2015 +0100
Committer: Robert Moss <ro...@gmail.com>
Committed: Wed Sep 16 15:35:28 2015 +0100
----------------------------------------------------------------------
.../nosql/mongodb/MongoDBReplicaSetImpl.java | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/3bb9cfc9/software/nosql/src/main/java/org/apache/brooklyn/entity/nosql/mongodb/MongoDBReplicaSetImpl.java
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/java/org/apache/brooklyn/entity/nosql/mongodb/MongoDBReplicaSetImpl.java b/software/nosql/src/main/java/org/apache/brooklyn/entity/nosql/mongodb/MongoDBReplicaSetImpl.java
index c4d675d..59e6524 100644
--- a/software/nosql/src/main/java/org/apache/brooklyn/entity/nosql/mongodb/MongoDBReplicaSetImpl.java
+++ b/software/nosql/src/main/java/org/apache/brooklyn/entity/nosql/mongodb/MongoDBReplicaSetImpl.java
@@ -134,6 +134,23 @@ public class MongoDBReplicaSetImpl extends DynamicClusterImpl implements MongoDB
return Iterables.tryFind(entities, Predicates.not(IS_PRIMARY)).or(Iterables.get(entities, 0));
}
};
+
+ @Override
+ public void init() {
+ addEnricher(Enrichers.builder()
+ .aggregating(MongoDBAuthenticationMixins.ROOT_USERNAME)
+ .publishing(MongoDBAuthenticationMixins.ROOT_USERNAME)
+ .fromMembers()
+ .valueToReportIfNoSensors(null)
+ .computing(new Function<Collection<String>, String>() {
+ @Override
+ public String apply(Collection<String> input) {
+ if (input==null || input.isEmpty()) return null;
+ // when authentication is used all members have the same value
+ return Iterables.getFirst(input, null);
+ }})
+ .build());
+ };
/** @return {@link #NON_PRIMARY_REMOVAL_STRATEGY} */
@Override