package org.swisspush.redisques.handler; import io.vertx.core.AsyncResult; import io.vertx.core.json.JsonArray; import static org.swisspush.redisques.util.RedisquesAPI.*; import io.vertx.core.Handler; import io.vertx.core.eventbus.Message; import io.vertx.core.json.JsonObject; /** * Class GetQueueItemsHandler. * * @author baldim, https://github.com/mcweba [Marc-Andre Weber] */ public class GetQueueItemsHandler implements Handler<AsyncResult<JsonArray>> { private Message<JsonObject> event; private Long queueItemCount; public GetQueueItemsHandler(Message<JsonObject> event, Long queueItemCount) { this.event = event; this.queueItemCount = queueItemCount; } @Override public void handle(AsyncResult<JsonArray> reply) { if(reply.succeeded()){ JsonArray resultArray = reply.result(); JsonArray countInfo = new JsonArray(); countInfo.add(resultArray.size()); countInfo.add(queueItemCount); event.reply(new JsonObject().put(STATUS, OK).put(VALUE, resultArray).put(INFO, countInfo)); } else { event.reply(new JsonObject().put(STATUS, ERROR)); } } }