All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.swisspush.redisques.handler.GetAllLocksHandler Maven / Gradle / Ivy

There is a newer version: 2.4.3
Show newest version
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 static org.swisspush.redisques.util.RedisquesAPI.*;

import java.util.List;

/**
 * Class GetAllLocksHandler.
 *
 * @author baldim
 */
public class GetAllLocksHandler implements Handler> {

    private Message event;

    public GetAllLocksHandler(Message event) {
        this.event = event;
    }

    @Override
    public void handle(AsyncResult reply) {
        if(reply.succeeded()){
            List list = reply.result().getList();
            JsonObject result = new JsonObject();
            JsonArray items = new JsonArray();
            for (Object item : list.toArray()) {
                items.add((String) item);
            }
            result.put("locks", items);
            event.reply(new JsonObject().put(STATUS, OK).put(VALUE, result));
        } else {
            event.reply(new JsonObject().put(STATUS, ERROR));
        }
    }
}