public abstract class Requestor extends Object
Modifier and Type | Class and Description |
---|---|
protected class |
Requestor.TransceiverCallback<T>
Handles callbacks from transceiver invocations.
|
Modifier and Type | Field and Description |
---|---|
protected List<RPCPlugin> |
rpcMetaPlugins |
Modifier | Constructor and Description |
---|---|
protected |
Requestor(Protocol local,
Transceiver transceiver) |
Modifier and Type | Method and Description |
---|---|
void |
addRPCPlugin(RPCPlugin plugin)
Adds a new plugin to manipulate RPC metadata.
|
Protocol |
getLocal() |
Protocol |
getRemote()
Return the remote protocol.
|
Transceiver |
getTransceiver() |
Object |
readError(Schema schema,
Decoder in)
Deprecated.
|
abstract Exception |
readError(Schema writer,
Schema reader,
Decoder in)
Reads an error message.
|
Object |
readResponse(Schema schema,
Decoder in)
Deprecated.
|
abstract Object |
readResponse(Schema writer,
Schema reader,
Decoder in)
Reads a response message.
|
Object |
request(String messageName,
Object request)
Writes a request message and reads a response or error message.
|
<T> void |
request(String messageName,
Object request,
Callback<T> callback)
Writes a request message and returns the result through a Callback.
|
abstract void |
writeRequest(Schema schema,
Object request,
Encoder out)
Writes a request message.
|
protected Requestor(Protocol local, Transceiver transceiver) throws IOException
IOException
public Protocol getLocal()
public Transceiver getTransceiver()
public void addRPCPlugin(RPCPlugin plugin)
plugin
- a plugin that will manipulate RPC metadatapublic Object request(String messageName, Object request) throws Exception
Exception
public <T> void request(String messageName, Object request, Callback<T> callback) throws AvroRemoteException, IOException
T
- the return type of the message.messageName
- the name of the message to invoke.request
- the request data to send.callback
- the callback which will be invoked when the response is
returned or an error occurs.AvroRemoteException
- if an exception is thrown to client by server.IOException
- if an I/O error occurs while sending the
message.AvroRuntimeException
- for another undeclared error while sending the
message.public Protocol getRemote() throws IOException
IOException
public abstract void writeRequest(Schema schema, Object request, Encoder out) throws IOException
IOException
@Deprecated public Object readResponse(Schema schema, Decoder in) throws IOException
IOException
public abstract Object readResponse(Schema writer, Schema reader, Decoder in) throws IOException
IOException
@Deprecated public Object readError(Schema schema, Decoder in) throws IOException
IOException
public abstract Exception readError(Schema writer, Schema reader, Decoder in) throws IOException
IOException
Copyright © 2009–2022 The Apache Software Foundation. All rights reserved.