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)
)
}