private void assertHasEvent( Sensor<?> sensor, Predicate<Object> componentPredicate, Predicate<? super CharSequence> descriptionPredicate) { for (SensorEvent<FailureDescriptor> event : events) { if (event.getSensor().equals(sensor) && (componentPredicate == null || componentPredicate.apply(event.getValue().getComponent())) && (descriptionPredicate == null || descriptionPredicate.apply(event.getValue().getDescription()))) { return; } } fail("No matching " + sensor + " event found; events=" + events); }
@Override public void onEvent(SensorEvent<T> event) { Entity e = event.getSource(); synchronized (values) { if (values.containsKey(e)) { values.put(e, event.getValue()); } else { if (LOG.isDebugEnabled()) LOG.debug( "{} received event for unknown producer ({}); presumably that producer has recently been removed", this, e); } } onUpdated(); }