org.apache.hadoop.ipc
Class RPC

java.lang.Object
  extended by org.apache.hadoop.ipc.RPC

public class RPC
extends Object

A simple RPC mechanism. A protocol is a Java interface. All parameters and return types must be one of:

All methods in the protocol should throw only IOException. No field data of the protocol instance is transmitted.


Nested Class Summary
static class RPC.Server
          An RPC Server.
static class RPC.VersionMismatch
          A version mismatch for the RPC protocol.
 
Method Summary
static Object[] call(Method method, Object[][] params, InetSocketAddress[] addrs, Configuration conf)
          Expert: Make multiple, parallel calls to a set of servers.
static VersionedProtocol getProxy(Class<?> protocol, long clientVersion, InetSocketAddress addr, Configuration conf)
          Construct a client-side proxy object with the default SocketFactory
static VersionedProtocol getProxy(Class<?> protocol, long clientVersion, InetSocketAddress addr, Configuration conf, SocketFactory factory)
          Construct a client-side proxy object that implements the named protocol, talking to a server at the named address.
static VersionedProtocol getProxy(Class<?> protocol, long clientVersion, InetSocketAddress addr, UserGroupInformation ticket, Configuration conf, SocketFactory factory)
          Construct a client-side proxy object that implements the named protocol, talking to a server at the named address.
static RPC.Server getServer(Object instance, String bindAddress, int port, Configuration conf)
          Construct a server for a protocol implementation instance listening on a port and address.
static RPC.Server getServer(Object instance, String bindAddress, int port, int numHandlers, boolean verbose, Configuration conf)
          Construct a server for a protocol implementation instance listening on a port and address.
static void stopProxy(VersionedProtocol proxy)
          Stop this proxy and release its invoker's resource
static VersionedProtocol waitForProxy(Class protocol, long clientVersion, InetSocketAddress addr, Configuration conf)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

waitForProxy

public static VersionedProtocol waitForProxy(Class protocol,
                                             long clientVersion,
                                             InetSocketAddress addr,
                                             Configuration conf)
                                      throws IOException
Throws:
IOException

getProxy

public static VersionedProtocol getProxy(Class<?> protocol,
                                         long clientVersion,
                                         InetSocketAddress addr,
                                         Configuration conf,
                                         SocketFactory factory)
                                  throws IOException
Construct a client-side proxy object that implements the named protocol, talking to a server at the named address.

Throws:
IOException

getProxy

public static VersionedProtocol getProxy(Class<?> protocol,
                                         long clientVersion,
                                         InetSocketAddress addr,
                                         UserGroupInformation ticket,
                                         Configuration conf,
                                         SocketFactory factory)
                                  throws IOException
Construct a client-side proxy object that implements the named protocol, talking to a server at the named address.

Throws:
IOException

getProxy

public static VersionedProtocol getProxy(Class<?> protocol,
                                         long clientVersion,
                                         InetSocketAddress addr,
                                         Configuration conf)
                                  throws IOException
Construct a client-side proxy object with the default SocketFactory

Parameters:
protocol -
clientVersion -
addr -
conf -
Returns:
a proxy instance
Throws:
IOException

stopProxy

public static void stopProxy(VersionedProtocol proxy)
Stop this proxy and release its invoker's resource

Parameters:
proxy - the proxy to be stopped

call

public static Object[] call(Method method,
                            Object[][] params,
                            InetSocketAddress[] addrs,
                            Configuration conf)
                     throws IOException
Expert: Make multiple, parallel calls to a set of servers.

Throws:
IOException

getServer

public static RPC.Server getServer(Object instance,
                                   String bindAddress,
                                   int port,
                                   Configuration conf)
                            throws IOException
Construct a server for a protocol implementation instance listening on a port and address.

Throws:
IOException

getServer

public static RPC.Server getServer(Object instance,
                                   String bindAddress,
                                   int port,
                                   int numHandlers,
                                   boolean verbose,
                                   Configuration conf)
                            throws IOException
Construct a server for a protocol implementation instance listening on a port and address.

Throws:
IOException


Copyright © 2008 The Apache Software Foundation