Search in sources :

Example 6 with Header

use of com.twosigma.beakerx.message.Header in project beakerx by twosigma.

the class BaseHandler method createReplyMessage.

protected Message createReplyMessage(Message message, Serializable responceData) {
    Message ret = null;
    if (message != null) {
        ret = new Message();
        Map<String, Serializable> commMap = message.getContent();
        ret.setHeader(new Header(COMM_MSG, message.getHeader().getSession()));
        HashMap<String, Serializable> map = new HashMap<>();
        map.put(COMM_ID, getString(commMap, COMM_ID));
        map.put(DATA, responceData);
        ret.setContent(map);
    }
    return ret;
}
Also used : Serializable(java.io.Serializable) Message(com.twosigma.beakerx.message.Message) Header(com.twosigma.beakerx.message.Header) HashMap(java.util.HashMap)

Example 7 with Header

use of com.twosigma.beakerx.message.Header in project beakerx by twosigma.

the class KernelSocketsZMQ method handleControlMsg.

private void handleControlMsg() {
    Message message = readMessage(controlSocket);
    JupyterMessages type = message.getHeader().getTypeEnum();
    if (type.equals(SHUTDOWN_REQUEST)) {
        Message reply = new Message();
        reply.setHeader(new Header(SHUTDOWN_REPLY, message.getHeader().getSession()));
        reply.setParentHeader(message.getHeader());
        reply.setContent(message.getContent());
        sendMsg(controlSocket, Collections.singletonList(reply));
        shutdown();
    }
}
Also used : Message(com.twosigma.beakerx.message.Message) Header(com.twosigma.beakerx.message.Header) JupyterMessages(com.twosigma.beakerx.kernel.msg.JupyterMessages)

Example 8 with Header

use of com.twosigma.beakerx.message.Header in project beakerx by twosigma.

the class KernelSocketsZMQ method readMessage.

private Message readMessage(ZMQ.Socket socket) {
    ZMsg zmsg = null;
    Message message = new Message();
    try {
        zmsg = ZMsg.recvMsg(socket);
        ZFrame[] parts = new ZFrame[zmsg.size()];
        zmsg.toArray(parts);
        byte[] uuid = parts[MessageParts.UUID].getData();
        byte[] header = parts[MessageParts.HEADER].getData();
        byte[] parent = parts[MessageParts.PARENT].getData();
        byte[] metadata = parts[MessageParts.METADATA].getData();
        byte[] content = parts[MessageParts.CONTENT].getData();
        byte[] expectedSig = parts[MessageParts.HMAC].getData();
        verifyDelim(parts[MessageParts.DELIM]);
        verifySignatures(expectedSig, header, parent, metadata, content);
        if (uuid != null) {
            message.getIdentities().add(uuid);
        }
        message.setHeader(parse(header, Header.class));
        message.setParentHeader(parse(parent, Header.class));
        message.setMetadata(parse(metadata, LinkedHashMap.class));
        message.setContent(parse(content, LinkedHashMap.class));
    } finally {
        if (zmsg != null) {
            zmsg.destroy();
        }
    }
    return message;
}
Also used : ZFrame(org.zeromq.ZFrame) Message(com.twosigma.beakerx.message.Message) Header(com.twosigma.beakerx.message.Header) ZMsg(org.zeromq.ZMsg) LinkedHashMap(java.util.LinkedHashMap)

Example 9 with Header

use of com.twosigma.beakerx.message.Header in project beakerx by twosigma.

the class KernelInfoHandler method handleMsg.

private void handleMsg(Message message) {
    logger.debug("Processing kernel info request");
    Message reply = new Message();
    reply.setContent(content());
    reply.setHeader(new Header(KERNEL_INFO_REPLY, message.getHeader().getSession()));
    reply.setParentHeader(message.getHeader());
    reply.setIdentities(message.getIdentities());
    send(reply);
}
Also used : Message(com.twosigma.beakerx.message.Message) Header(com.twosigma.beakerx.message.Header)

Example 10 with Header

use of com.twosigma.beakerx.message.Header in project beakerx by twosigma.

the class InspectHandler method createMsg.

private Message createMsg(Message message, InspectResult inspectResult) {
    Message reply = new Message();
    reply.setHeader(new Header(INSPECT_REPLY, message.getHeader().getSession()));
    reply.setIdentities(message.getIdentities());
    reply.setParentHeader(message.getHeader());
    Map<String, Serializable> content = new HashMap<>();
    content.put(STATUS, "ok");
    content.put(DATA, inspectResult.getData());
    // content.put(METADATA, {});
    content.put(FOUND, inspectResult.getFound());
    reply.setContent(content);
    return reply;
}
Also used : Serializable(java.io.Serializable) Message(com.twosigma.beakerx.message.Message) Header(com.twosigma.beakerx.message.Header) HashMap(java.util.HashMap)

Aggregations

Header (com.twosigma.beakerx.message.Header)25 Message (com.twosigma.beakerx.message.Message)23 Serializable (java.io.Serializable)12 HashMap (java.util.HashMap)12 Test (org.junit.Test)6 MessageTest (com.twosigma.beakerx.message.MessageTest)5 EvaluatorResultTestWatcher.waitForIdleMessage (com.twosigma.beakerx.evaluator.EvaluatorResultTestWatcher.waitForIdleMessage)2 Comm (com.twosigma.beakerx.kernel.comm.Comm)2 LinkedHashMap (java.util.LinkedHashMap)2 KernelTest (com.twosigma.beakerx.KernelTest)1 MessageFactoryTest.getExecuteRequestMessage (com.twosigma.beakerx.MessageFactoryTest.getExecuteRequestMessage)1 EvaluatorResultTestWatcher.waitForErrorMessage (com.twosigma.beakerx.evaluator.EvaluatorResultTestWatcher.waitForErrorMessage)1 EvaluatorResultTestWatcher.waitForUpdateMessage (com.twosigma.beakerx.evaluator.EvaluatorResultTestWatcher.waitForUpdateMessage)1 EvaluatorTest (com.twosigma.beakerx.evaluator.EvaluatorTest)1 KernelHandler (com.twosigma.beakerx.handler.KernelHandler)1 KernelHandlerWrapper.wrapBusyIdle (com.twosigma.beakerx.handler.KernelHandlerWrapper.wrapBusyIdle)1 KernelFunctionality (com.twosigma.beakerx.kernel.KernelFunctionality)1 COMMS (com.twosigma.beakerx.kernel.comm.Comm.COMMS)1 TARGET_NAME (com.twosigma.beakerx.kernel.comm.Comm.TARGET_NAME)1 JupyterMessages (com.twosigma.beakerx.kernel.msg.JupyterMessages)1