Package org.apache.storm.trident.spout

# Interface ITridentSpout.Emitter<X>

All Known Subinterfaces:
  `ICommitterTridentSpout.Emitter`

All Known Implementing Classes:
  `BatchSpoutExecutor.BatchSpoutEmitter`, `OpaquePartitionedTridentSpoutExecutor.Emitter`

Enclosing interface:
  ITridentSpout<T>

public static interface ITridentSpout.Emitter<X>

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  Release any resources held by this emitter.
  `void`
  `emitBatch(TransactionAttempt tx, X coordinatorMeta, TridentCollector collector)`
  Emit a batch for the specified transaction attempt and metadata for the transaction.
  `void`
  `success(TransactionAttempt tx)`
  This attempt committed successfully, so all state for this commit and before can be safely cleaned up.

- ## Method Details

  - ### emitBatch

    void emitBatch(TransactionAttempt tx, X coordinatorMeta, TridentCollector collector)
    Emit a batch for the specified transaction attempt and metadata for the transaction. The metadata was created by the Coordinator in the initializeTransaction method. This method must always emit the same batch of tuples across all tasks for the same transaction id.
    Parameters:
      `tx` - transaction id
      `coordinatorMeta` - metadata from the coordinator defining this transaction
      `collector` - output tuple collector

  - ### success

    void success(TransactionAttempt tx)
    This attempt committed successfully, so all state for this commit and before can be safely cleaned up.
    Parameters:
      `tx` - attempt object containing transaction id and attempt number

  - ### close

    void close()
    Release any resources held by this emitter.