public class HBaseRPC extends Object
A protocol is a Java interface. All parameters and return types must be one of:
boolean
, byte
,
char
, short
, int
, long
,
float
, double
, or void
; orString
; orWritable
; orModifier and Type | Class and Description |
---|---|
static class |
HBaseRPC.UnknownProtocolException
An error requesting an RPC protocol that the server is not serving.
|
static class |
HBaseRPC.VersionMismatch
A version mismatch for the RPC protocol.
|
Modifier and Type | Field and Description |
---|---|
protected static org.apache.commons.logging.Log |
LOG |
static String |
RPC_ENGINE_PROP
Configuration key for the
RpcEngine implementation to load to
handle connection protocols. |
Modifier and Type | Method and Description |
---|---|
static Object[] |
call(Method method,
Object[][] params,
InetSocketAddress[] addrs,
Class<? extends VersionedProtocol> protocol,
User ticket,
org.apache.hadoop.conf.Configuration conf)
Deprecated.
Instead of calling statically, use
getProtocolEngine(org.apache.hadoop.conf.Configuration)
to obtain an RpcEngine instance and then use
RpcEngine.call(java.lang.reflect.Method, Object[][], java.net.InetSocketAddress[], Class, org.apache.hadoop.hbase.security.User, org.apache.hadoop.conf.Configuration) |
static RpcEngine |
getProtocolEngine(org.apache.hadoop.conf.Configuration conf)
Returns a new instance of the configured
RpcEngine implementation. |
static int |
getRpcTimeout() |
static int |
getRpcTimeout(int defaultTimeout)
Returns the lower of the thread-local RPC time from
setRpcTimeout(int) and the given
default timeout. |
static RpcServer |
getServer(Class protocol,
Object instance,
Class<?>[] ifaces,
String bindAddress,
int port,
int numHandlers,
int metaHandlerCount,
boolean verbose,
org.apache.hadoop.conf.Configuration conf,
int highPriorityLevel)
Construct a server for a protocol implementation instance.
|
static RpcServer |
getServer(Object instance,
Class<?>[] ifaces,
String bindAddress,
int port,
int numHandlers,
int metaHandlerCount,
boolean verbose,
org.apache.hadoop.conf.Configuration conf,
int highPriorityLevel)
Construct a server for a protocol implementation instance listening on a
port and address.
|
static void |
resetRpcTimeout() |
static void |
setRpcTimeout(int rpcTimeout) |
static <T extends VersionedProtocol> |
waitForProxy(RpcEngine rpcClient,
Class<T> protocol,
long clientVersion,
InetSocketAddress addr,
org.apache.hadoop.conf.Configuration conf,
int maxAttempts,
int rpcTimeout,
long timeout) |
protected static final org.apache.commons.logging.Log LOG
public static final String RPC_ENGINE_PROP
RpcEngine
implementation to load to
handle connection protocols. Handlers for individual protocols can be
configured using "hbase.rpc.engine." + protocol.class.name
.public static RpcEngine getProtocolEngine(org.apache.hadoop.conf.Configuration conf)
RpcEngine
implementation.public static <T extends VersionedProtocol> T waitForProxy(RpcEngine rpcClient, Class<T> protocol, long clientVersion, InetSocketAddress addr, org.apache.hadoop.conf.Configuration conf, int maxAttempts, int rpcTimeout, long timeout) throws IOException
protocol
- protocol interfaceclientVersion
- which client version we expectaddr
- address of remote serviceconf
- configurationmaxAttempts
- max attemptsrpcTimeout
- timeout for each RPCtimeout
- timeout in millisecondsIOException
- e@Deprecated public static Object[] call(Method method, Object[][] params, InetSocketAddress[] addrs, Class<? extends VersionedProtocol> protocol, User ticket, org.apache.hadoop.conf.Configuration conf) throws IOException, InterruptedException
getProtocolEngine(org.apache.hadoop.conf.Configuration)
to obtain an RpcEngine
instance and then use
RpcEngine.call(java.lang.reflect.Method, Object[][], java.net.InetSocketAddress[], Class, org.apache.hadoop.hbase.security.User, org.apache.hadoop.conf.Configuration)
method
- method to invokeparams
- array of parametersaddrs
- array of addressesconf
- configurationIOException
- eInterruptedException
public static RpcServer getServer(Object instance, Class<?>[] ifaces, String bindAddress, int port, int numHandlers, int metaHandlerCount, boolean verbose, org.apache.hadoop.conf.Configuration conf, int highPriorityLevel) throws IOException
instance
- instancebindAddress
- bind addressport
- port to bind tonumHandlers
- number of handlers to startverbose
- verbose flagconf
- configurationIOException
- epublic static RpcServer getServer(Class protocol, Object instance, Class<?>[] ifaces, String bindAddress, int port, int numHandlers, int metaHandlerCount, boolean verbose, org.apache.hadoop.conf.Configuration conf, int highPriorityLevel) throws IOException
IOException
public static void setRpcTimeout(int rpcTimeout)
public static int getRpcTimeout()
public static void resetRpcTimeout()
public static int getRpcTimeout(int defaultTimeout)
setRpcTimeout(int)
and the given
default timeout.Copyright © 2014 The Apache Software Foundation. All Rights Reserved.