package org.swisspush.redisques.handler; import io.vertx.core.AsyncResult; import io.vertx.core.Handler; import io.vertx.core.eventbus.Message; import io.vertx.core.json.JsonArray; import io.vertx.core.json.JsonObject; import java.util.List; import static org.swisspush.redisques.util.RedisquesAPI.*; /** * Class GetQueuesCountHandler. * * @author https://github.com/mcweba [Marc-Andre Weber] */ public class GetQueuesHandler implements Handler<AsyncResult<JsonArray>> { private Message<JsonObject> event; public GetQueuesHandler(Message<JsonObject> event) { this.event = event; } @Override public void handle(AsyncResult<JsonArray> reply) { if(reply.succeeded()){ List<Object> list = reply.result().getList(); JsonObject result = new JsonObject(); JsonArray items = new JsonArray(); for (Object item : list.toArray()) { items.add((String) item); } result.put("queues", items); event.reply(new JsonObject().put(STATUS, OK).put(VALUE, result)); } else { event.reply(new JsonObject().put(STATUS, ERROR)); } } }