@SuppressWarnings("rawtypes") public static SensorSummary sensorSummary(Entity entity, Sensor<?> sensor) { String applicationUri = "/v1/applications/" + entity.getApplicationId(); String entityUri = applicationUri + "/entities/" + entity.getId(); String selfUri = entityUri + "/sensors/" + URLParamEncoder.encode(sensor.getName()); MutableMap.Builder<String, URI> lb = MutableMap.<String, URI>builder() .put("self", URI.create(selfUri)) .put("application", URI.create(applicationUri)) .put("entity", URI.create(entityUri)) .put("action:json", URI.create(selfUri)); Iterable<RendererHints.NamedAction> hints = Iterables.filter(RendererHints.getHintsFor(sensor), RendererHints.NamedAction.class); for (RendererHints.NamedAction na : hints) addNamedAction(lb, na, entity, sensor); return new SensorSummary( sensor.getName(), sensor.getTypeName(), sensor.getDescription(), lb.build()); }
public static SensorSummary sensorSummaryForCatalog(Sensor<?> sensor) { return new SensorSummary(sensor.getName(), sensor.getTypeName(), sensor.getDescription(), null); }