Package org.apache.storm

# Class LocalDRPC

java.lang.Object
org.apache.storm.LocalDRPC

All Implemented Interfaces:
  `AutoCloseable`, `Shutdownable`, `DistributedRPC.Iface`, `DistributedRPCInvocations.Iface`, `ILocalDRPC`

public class LocalDRPC extends Object implements ILocalDRPC
A Local way to test DRPC.

try `(LocalDRPC drpc = new LocalDRPC()) { // Do tests }`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `LocalDRPC()`
  Creates a LocalDRPC with a default metrics registry.
  `LocalDRPC(StormMetricsRegistry metricsRegistry)`
  Creates a LocalDRPC with the specified metrics registry.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  `String`
  `execute(String functionName, String funcArgs)`
  `void`
  `failRequest(String id)`
  `void`
  `failRequestV2(String id, DRPCExecutionException e)`
  `DRPCRequest`
  `fetchRequest(String functionName)`
  `String`
  `getServiceId()`
  Get the ID of the service.
  `void`
  `result(String id, String result)`
  `void`
  `shutdown()`
  Shutdown.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### LocalDRPC

    public LocalDRPC()
    Creates a LocalDRPC with a default metrics registry.

  - ### LocalDRPC

    public LocalDRPC(StormMetricsRegistry metricsRegistry)
    Creates a LocalDRPC with the specified metrics registry.
    Parameters:
      `metricsRegistry` - The registry

- ## Method Details

  - ### getServiceId

    public String getServiceId()
    Description copied from interface: `ILocalDRPC`
    Get the ID of the service. This is used internally if multiple local DRPC clusters are in use at one time.
    Specified by:
      `getServiceId` in interface `ILocalDRPC`

  - ### result

    public void result(String id, String result) throws AuthorizationException, org.apache.storm.thrift.TException
    Specified by:
      `result` in interface `DistributedRPCInvocations.Iface`
    Throws:
      `AuthorizationException`
      `org.apache.storm.thrift.TException`

  - ### execute

    public String execute(String functionName, String funcArgs) throws DRPCExecutionException, AuthorizationException, org.apache.storm.thrift.TException
    Specified by:
      `execute` in interface `DistributedRPC.Iface`
    Throws:
      `DRPCExecutionException`
      `AuthorizationException`
      `org.apache.storm.thrift.TException`

  - ### failRequest

    public void failRequest(String id) throws AuthorizationException, org.apache.storm.thrift.TException
    Specified by:
      `failRequest` in interface `DistributedRPCInvocations.Iface`
    Throws:
      `AuthorizationException`
      `org.apache.storm.thrift.TException`

  - ### failRequestV2

    public void failRequestV2(String id, DRPCExecutionException e) throws AuthorizationException, org.apache.storm.thrift.TException
    Specified by:
      `failRequestV2` in interface `DistributedRPCInvocations.Iface`
    Throws:
      `AuthorizationException`
      `org.apache.storm.thrift.TException`

  - ### fetchRequest

    public DRPCRequest fetchRequest(String functionName) throws AuthorizationException, org.apache.storm.thrift.TException
    Specified by:
      `fetchRequest` in interface `DistributedRPCInvocations.Iface`
    Throws:
      `AuthorizationException`
      `org.apache.storm.thrift.TException`

  - ### close

    public void close()
    Specified by:
      `close` in interface `AutoCloseable`

  - ### shutdown

    public void shutdown()
    Description copied from interface: `ILocalDRPC`
    Shutdown.
    Specified by:
      `shutdown` in interface `ILocalDRPC`
    Specified by:
      `shutdown` in interface `Shutdownable`