Class OpaquePartitionedTridentSpoutExecutor

java.lang.Object
org.apache.storm.trident.spout.OpaquePartitionedTridentSpoutExecutor
All Implemented Interfaces:
Serializable, ICommitterTridentSpout<Object>, ITridentDataSource, ITridentSpout<Object>

public class OpaquePartitionedTridentSpoutExecutor extends Object implements ICommitterTridentSpout<Object>
See Also:
  • Field Details

    • LOG

      protected static final org.slf4j.Logger LOG
  • Constructor Details

  • Method Details

    • getCoordinator

      public ITridentSpout.BatchCoordinator<Object> getCoordinator(String txStateId, Map<String,Object> conf, TopologyContext context)
      Description copied from interface: ITridentSpout
      The coordinator for a TransactionalSpout runs in a single thread and indicates when batches of tuples should be emitted. The Coordinator that you provide in a TransactionalSpout provides metadata for each transaction so that the transactions can be replayed in case of failure.

      Two instances are requested, one on the master batch coordinator where isReady() is called, and an instance in the coordinator bolt which is used for all other operations. The two instances do not necessarily share a worker JVM.

      Specified by:
      getCoordinator in interface ITridentSpout<Object>
      Parameters:
      txStateId - stream id
      conf - Storm config map
      context - topology context
      Returns:
      spout coordinator instance
    • getEmitter

      public ICommitterTridentSpout.Emitter getEmitter(String txStateId, Map<String,Object> conf, TopologyContext context)
      Description copied from interface: ITridentSpout
      The emitter for a TransactionalSpout runs as many tasks across the cluster. Emitters are responsible for emitting batches of tuples for a transaction and must ensure that the same batch of tuples is always emitted for the same transaction id.

      All emitter tasks get the same transaction metadata. The topology context parameter contains the instance task id that can be used to distribute the work across the tasks.

      Specified by:
      getEmitter in interface ICommitterTridentSpout<Object>
      Specified by:
      getEmitter in interface ITridentSpout<Object>
      Parameters:
      txStateId - stream id
      conf - Storm config map
      context - topology context
      Returns:
      spout emitter
    • getOutputFields

      public Fields getOutputFields()
      Specified by:
      getOutputFields in interface ITridentSpout<Object>
    • getComponentConfiguration

      public Map<String,Object> getComponentConfiguration()
      Specified by:
      getComponentConfiguration in interface ITridentSpout<Object>