public abstract class AbstractRpcClient extends Object implements RpcClient
| Modifier and Type | Field and Description | 
|---|---|
| protected int | batchSize | 
| protected long | connectTimeout | 
| protected long | requestTimeout | 
| Constructor and Description | 
|---|
| AbstractRpcClient() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract void | append(Event event)Send a single  Eventto the associated Flume source. | 
| abstract void | appendBatch(List<Event> events)Send a list of events to the associated Flume source. | 
| abstract void | close()Immediately closes the client so that it may no longer be used. | 
| protected abstract void | configure(Properties properties)Configure the client using the given properties object. | 
| int | getBatchSize()Returns the maximum number of  eventsthat may be batched
 at once byappendBatch(). | 
| abstract boolean | isActive()Returns  trueif this object appears to be in a usable state, and
 it returnsfalseif this object is permanently disabled. | 
protected int batchSize
protected long connectTimeout
protected long requestTimeout
public int getBatchSize()
RpcClientevents that may be batched
 at once by appendBatch().getBatchSize in interface RpcClientpublic abstract void append(Event event) throws EventDeliveryException
RpcClientSend a single Event to the associated Flume source.
This method blocks until the RPC returns or until the request times out.
Note: If this method throws an
 EventDeliveryException, there is no way to recover and the
 application must invoke RpcClient.close() on this object to clean up system
 resources.
append in interface RpcClientEventDeliveryException - when an error prevents event delivery.public abstract void appendBatch(List<Event> events) throws EventDeliveryException
RpcClientSend a list of events to the associated Flume source.
This method blocks until the RPC returns or until the request times out.
It is strongly recommended that the number of events in the List be no
 more than RpcClient.getBatchSize(). If it is more, multiple RPC calls will
 be required, and the likelihood of duplicate Events being stored will
 increase.
Note: If this method throws an
 EventDeliveryException, there is no way to recover and the
 application must invoke RpcClient.close() on this object to clean up system
 resources.
appendBatch in interface RpcClientevents - List of events to sendEventDeliveryException - when an error prevents event delivery.public abstract boolean isActive()
RpcClientReturns true if this object appears to be in a usable state, and
 it returns false if this object is permanently disabled.
If this method returns false, an application must call
 RpcClient.close() on this object to clean up system resources.
public abstract void close()
                    throws FlumeException
RpcClientImmediately closes the client so that it may no longer be used.
Note: This method MUST be called by applications when they are done using the RPC client in order to clean up resources.
Multi-threaded applications may want to gracefully stop making
 RPC calls before calling close(). Otherwise, they risk getting
 EventDeliveryException thrown from their in-flight calls when the
 underlying connection is disabled.
close in interface RpcClientFlumeExceptionprotected abstract void configure(Properties properties) throws FlumeException
properties - FlumeException - if the client can not be configured using this
 method, or if the client was already configured once.Copyright © 2009-2017 Apache Software Foundation. All Rights Reserved.