Package org.apache.storm.trident.spout
Class BatchSpoutExecutor.EmptyCoordinator
- java.lang.Object
-
- org.apache.storm.trident.spout.BatchSpoutExecutor.EmptyCoordinator
-
- All Implemented Interfaces:
ITridentSpout.BatchCoordinator<Object>
- Enclosing class:
- BatchSpoutExecutor
public static class BatchSpoutExecutor.EmptyCoordinator extends Object implements ITridentSpout.BatchCoordinator<Object>
-
-
Constructor Summary
Constructors Constructor Description EmptyCoordinator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Release any resources from this coordinator.Object
initializeTransaction(long txid, Object prevMetadata, Object currMetadata)
Create metadata for this particular transaction id which has never been emitted before.boolean
isReady(long txid)
hint to Storm if the spout is ready for the transaction id.void
success(long txid)
This attempt committed successfully, so all state for this commit and before can be safely cleaned up.
-
-
-
Method Detail
-
initializeTransaction
public Object initializeTransaction(long txid, Object prevMetadata, Object currMetadata)
Description copied from interface:ITridentSpout.BatchCoordinator
Create metadata for this particular transaction id which has never been emitted before. The metadata should contain whatever is necessary to be able to replay the exact batch for the transaction at a later point.The metadata is stored in Zookeeper.
Storm uses JSON encoding to store the metadata. Only simple types such as numbers, booleans, strings, lists, and maps should be used.
- Specified by:
initializeTransaction
in interfaceITridentSpout.BatchCoordinator<Object>
- Parameters:
txid
- The id of the transaction.prevMetadata
- The metadata of the previous transactioncurrMetadata
- The metadata for this transaction the last time it was initialized. null if this is the first attempt- Returns:
- the metadata for this new transaction
-
close
public void close()
Description copied from interface:ITridentSpout.BatchCoordinator
Release any resources from this coordinator.- Specified by:
close
in interfaceITridentSpout.BatchCoordinator<Object>
-
success
public void success(long txid)
Description copied from interface:ITridentSpout.BatchCoordinator
This attempt committed successfully, so all state for this commit and before can be safely cleaned up.- Specified by:
success
in interfaceITridentSpout.BatchCoordinator<Object>
- Parameters:
txid
- transaction id that completed
-
isReady
public boolean isReady(long txid)
Description copied from interface:ITridentSpout.BatchCoordinator
hint to Storm if the spout is ready for the transaction id.- Specified by:
isReady
in interfaceITridentSpout.BatchCoordinator<Object>
- Parameters:
txid
- the id of the transaction- Returns:
- true, if the spout is ready for the given transaction id
-
-