Beispiel #1
0
  /**
   * Get all alarms. Returns a list of all alarms across all devices.
   *
   * @param includeCleared include recently cleared alarms in response
   * @return JSON encoded set of alarms
   */
  @GET
  @Produces(MediaType.APPLICATION_JSON)
  public Response getAlarms(
      @DefaultValue("false") @QueryParam("includeCleared") final boolean includeCleared) {

    log.info("Requesting all alarms, includeCleared={}", includeCleared);
    final AlarmService service = get(AlarmService.class);

    final Iterable<Alarm> alarms = includeCleared ? service.getAlarms() : service.getActiveAlarms();

    final ObjectNode result = new ObjectMapper().createObjectNode();
    result.set("alarms", codec(Alarm.class).encode(alarms, this));
    return ok(result.toString()).build();
  }