
com.almende.eve.transform.rpc.RpcTransform Maven / Gradle / Ivy
/*
* Copyright: Almende B.V. (2014), Rotterdam, The Netherlands
* License: The Apache Software License, Version 2.0
*/
package com.almende.eve.transform.rpc;
import java.lang.reflect.Method;
import java.net.URI;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.almende.eve.auth.Authorizor;
import com.almende.eve.auth.DefaultAuthorizor;
import com.almende.eve.capabilities.handler.Handler;
import com.almende.eve.transform.Transform;
import com.almende.eve.transform.rpc.annotation.Sender;
import com.almende.eve.transform.rpc.formats.JSONMessage;
import com.almende.eve.transform.rpc.formats.JSONRPCException;
import com.almende.eve.transform.rpc.formats.JSONRequest;
import com.almende.eve.transform.rpc.formats.JSONResponse;
import com.almende.eve.transform.rpc.formats.RequestParams;
import com.almende.util.TypeUtil;
import com.almende.util.callback.AsyncCallback;
import com.almende.util.callback.AsyncCallbackQueue;
import com.almende.util.jackson.JOM;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
/**
* The Class RpcTransform.
*/
public class RpcTransform implements Transform {
private static final Logger LOG = Logger.getLogger(RpcTransform.class
.getName());
private static final RequestParams EVEREQUESTPARAMS = new RequestParams();
private static final JavaType OBJECTNODETYPE = JOM.getTypeFactory()
.constructType(
ObjectNode.class);
static {
EVEREQUESTPARAMS.put(Sender.class, null);
}
private Authorizor auth = new DefaultAuthorizor();
private final AsyncCallbackQueue callbacks = new AsyncCallbackQueue();
private final Handler
© 2015 - 2025 Weber Informatics LLC | Privacy Policy