StateChangeResource.java

package com.workbenchclassic;

import java.util.logging.Level;
import java.util.logging.Logger;

import javax.json.JsonObject;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

@Path("/state")
public class StateChangeResource {

    @POST
    @Consumes(MediaType.APPLICATION_JSON)
    public Response changeState(JsonObject payload) {

        String machineID = payload.getString("machineID");
        JsonObject data = payload.getJsonObject("data");

        EventBus.publish(machineID, data);

        return Response.ok().build();
    }
}