You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2015/09/14 17:48:05 UTC
[2/3] incubator-brooklyn git commit: Changes propagator
getDestinationSensor to lookup on sensor name, rather than sensor equality
Changes propagator getDestinationSensor to lookup on sensor name, rather than sensor equality
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/dab66540
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/dab66540
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/dab66540
Branch: refs/heads/master
Commit: dab66540056e6b19932cd3eaa0214d2c932a37dc
Parents: f53d536
Author: Martin Harris <gi...@nakomis.com>
Authored: Thu Sep 10 15:33:32 2015 +0100
Committer: Martin Harris <gi...@nakomis.com>
Committed: Thu Sep 10 16:40:35 2015 +0100
----------------------------------------------------------------------
.../apache/brooklyn/enricher/stock/Propagator.java | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/dab66540/core/src/main/java/org/apache/brooklyn/enricher/stock/Propagator.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/enricher/stock/Propagator.java b/core/src/main/java/org/apache/brooklyn/enricher/stock/Propagator.java
index e6050fd..195fc9c 100644
--- a/core/src/main/java/org/apache/brooklyn/enricher/stock/Propagator.java
+++ b/core/src/main/java/org/apache/brooklyn/enricher/stock/Propagator.java
@@ -39,6 +39,7 @@ import org.apache.brooklyn.util.core.task.ValueResolver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
@@ -162,7 +163,7 @@ public class Propagator extends AbstractEnricher implements SensorEventListener<
// propagate upwards
Sensor<?> sourceSensor = event.getSensor();
Sensor<?> destinationSensor = getDestinationSensor(sourceSensor);
-
+
if (!sensorFilter.apply(sourceSensor)) {
return; // ignoring excluded sensor
}
@@ -195,7 +196,15 @@ public class Propagator extends AbstractEnricher implements SensorEventListener<
}
}
- private Sensor<?> getDestinationSensor(Sensor<?> sourceSensor) {
- return sensorMapping.containsKey(sourceSensor) ? sensorMapping.get(sourceSensor): sourceSensor;
+ private Sensor<?> getDestinationSensor(final Sensor<?> sourceSensor) {
+ Optional<? extends Sensor<?>> mappingSensor = Iterables.tryFind(sensorMapping.keySet(), new Predicate<Sensor<?>>() {
+ @Override
+ public boolean apply(Sensor<?> sensor) {
+ return sourceSensor.getName().equals(sensor.getName());
+ }
+ });
+
+ return mappingSensor.isPresent() ? sensorMapping.get(mappingSensor.get()) : sourceSensor;
}
+
}