@Override public Number apply(Collection<S> input) { return average((Collection)input, (Number)defaultValueForUnreportedSensors, (Number)valueToReportIfNoSensors, (TypeToken) publishing.getTypeToken()); }}; this.computing((Function)function);
@Override @SuppressWarnings({ "unchecked", "rawtypes" }) public Function<? super Collection<S>, ? extends T> get() { // relies on TypeCoercion of result from Number to T, and type erasure for us to get away with it! return new ComputingSum((Number)defaultValueForUnreportedSensors, (Number)valueToReportIfNoSensors, publishing.getTypeToken()); } };
@Override @SuppressWarnings({ "unchecked", "rawtypes" }) public Function<? super Collection<S>, ? extends T> get() { // relies on TypeCoercion of result from Number to T, and type erasure for us to get away with it! return new ComputingAverage((Number)defaultValueForUnreportedSensors, (Number)valueToReportIfNoSensors, publishing.getTypeToken()); } };
@Override public Number apply(Collection<S> input) { return sum((Collection)input, (Number)defaultValueForUnreportedSensors, (Number)valueToReportIfNoSensors, (TypeToken) publishing.getTypeToken()); }}; this.computing((Function)function);
@Override public Number apply(Collection<S> input) { return average((Collection)input, (Number)defaultValueForUnreportedSensors, (Number)valueToReportIfNoSensors, (TypeToken) publishing.getTypeToken()); }}; this.computing((Function)function);
@Override public Number apply(Collection<S> input) { return sum((Collection)input, (Number)defaultValueForUnreportedSensors, (Number)valueToReportIfNoSensors, (TypeToken) publishing.getTypeToken()); }}; this.computing((Function)function);
public static <T> AttributeSensor<T> newSensorRenamed(String newName, AttributeSensor<T> sensor) { return new BasicAttributeSensor<T>(sensor.getTypeToken(), newName, sensor.getDescription()); }
@SuppressWarnings({ "unchecked", "rawtypes" }) @Override public Void apply(Entity input) { for (Map.Entry<AttributeSensor<?>,Object> entry : values.entrySet()) { AttributeSensor sensor = entry.getKey(); Object value = entry.getValue(); if (value==Entities.UNCHANGED) { // nothing } else if (value==Entities.REMOVE) { ((EntityInternal)input).sensors().remove(sensor); } else { value = TypeCoercions.coerce(value, sensor.getTypeToken()); ((EntityInternal)input).sensors().set(sensor, value); } } return null; } }
entity.sensors().set((AttributeSensor)sensor, TypeCoercions.coerce(elementForSensor.getAsString(), sensor.getTypeToken())); } else { log.debug("Entity {}: no Chef attribute matching {}; setting sensor {} to null", new Object[]{
entity.sensors().set((AttributeSensor)sensor, TypeCoercions.coerce(elementForSensor.getAsString(), sensor.getTypeToken())); } else { log.debug("Entity {}: no Chef attribute matching {}; setting sensor {} to null", new Object[]{