org.apache.flume.sink
Class FailoverSinkProcessor

java.lang.Object
  extended by org.apache.flume.sink.FailoverSinkProcessor
All Implemented Interfaces:
Configurable, LifecycleAware, SinkProcessor

public class FailoverSinkProcessor
extends Object
implements SinkProcessor

FailoverSinkProcessor is in no way thread safe and expects to be run via SinkRunner Additionally, setSinks must be called before configure, and additional sinks cannot be added while running To configure, set a sink groups processor to "failover" and set priorities for individual sinks: Ex) host1.sinkgroups = group1 host1.sinkgroups.group1.sinks = sink1 sink2 host1.sinkgroups.group1.processor.type = failover host1.sinkgroups.group1.processor.priority.sink1 = 5 host1.sinkgroups.group1.processor.priority.sink2 = 10


Constructor Summary
FailoverSinkProcessor()
           
 
Method Summary
 void configure(Context context)
           
 LifecycleState getLifecycleState()
           Return the current state of the service or component.
 Sink.Status process()
          Handle a request to poll the owned sinks.
 void setSinks(List<Sink> sinks)
          Set all sinks to work with.
 void start()
           Starts a service or component.
 void stop()
           Stops a service or component.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FailoverSinkProcessor

public FailoverSinkProcessor()
Method Detail

start

public void start()
Description copied from interface: LifecycleAware

Starts a service or component.

Implementations should determine the result of any start logic and effect the return value of LifecycleAware.getLifecycleState() accordingly.

Specified by:
start in interface LifecycleAware

stop

public void stop()
Description copied from interface: LifecycleAware

Stops a service or component.

Implementations should determine the result of any stop logic and effect the return value of LifecycleAware.getLifecycleState() accordingly.

Specified by:
stop in interface LifecycleAware

getLifecycleState

public LifecycleState getLifecycleState()
Description copied from interface: LifecycleAware

Return the current state of the service or component.

Specified by:
getLifecycleState in interface LifecycleAware

configure

public void configure(Context context)
Specified by:
configure in interface Configurable

process

public Sink.Status process()
                    throws EventDeliveryException
Description copied from interface: SinkProcessor

Handle a request to poll the owned sinks.

The processor is expected to call Sink.process() on whatever sink(s) appropriate, handling failures as appropriate and throwing EventDeliveryException when there is a failure to deliver any events according to the delivery policy defined by the sink processor implementation. See specific implementations of this interface for delivery behavior and policies.

Specified by:
process in interface SinkProcessor
Returns:
Returns READY if events were successfully consumed, or BACKOFF if no events were available in the channel to consume.
Throws:
EventDeliveryException - if the behavior guaranteed by the processor couldn't be carried out.

setSinks

public void setSinks(List<Sink> sinks)
Description copied from interface: SinkProcessor

Set all sinks to work with.

Sink specific parameters are passed to the processor via configure

Specified by:
setSinks in interface SinkProcessor
Parameters:
sinks - A non-null, non-empty list of sinks to be chosen from by the processor


Copyright © 2009-2012 Apache Software Foundation. All Rights Reserved.