def itemList[T <: IndexedItem]()

in app/controllers/Api.scala [446:471]


  def itemList[T <: IndexedItem](
      agent: CollectorAgentTrait[T],
      objectKey: String,
      defaultFilter: (String, String)*
  )(implicit
      request: RequestHeader,
      writes: Writes[T],
      executionContext: ExecutionContext
  ): Future[Result] =
    ApiResult.filter {
      val expand = request.getQueryString("_brief").isEmpty
      val filter = ResourceFilter.fromRequestWithDefaults(defaultFilter: _*)
      agent
        .get()
        .map { agent =>
          agent.label ->
            agent.data.flatMap(host =>
              itemJson(host, expand, Some(agent.label), filter = filter)
            )
        }
        .toMap
    } reduce { collection =>
      Json.obj(
        objectKey -> toJson(collection.values.flatten)
      )
    }