Package org.apache.storm.topology

# Interface IStatefulBolt<T extends State>

All Superinterfaces:
  `IComponent`, `IStatefulComponent<T>`, `Serializable`

All Known Implementing Classes:
  `BaseStatefulBolt`, `PersistentWindowedBoltExecutor`, `StatefulWindowedBoltExecutor`, `StatefulWordCounter`

public interface IStatefulBolt<T extends State> extends IStatefulComponent<T>
A bolt abstraction for supporting stateful computation. The state of the bolt is periodically checkpointed.

The framework provides at-least once guarantee for the state updates. The stateful bolts are expected to anchor the tuples while emitting and ack the input tuples once its processed.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `cleanup()`
  Analogue to bolt function.
  `void`
  `execute(Tuple input)`
  Analogue to bolt function.
  `void`
  `prepare(Map<String,Object> topoConf, TopologyContext context, OutputCollector collector)`
  Analogue to bolt function.

  ### Methods inherited from interface org.apache.storm.topology.IComponent

  `declareOutputFields, getComponentConfiguration`

  ### Methods inherited from interface org.apache.storm.topology.IStatefulComponent

  `initState, preCommit, prePrepare, preRollback`

- ## Method Details

  - ### prepare

    void prepare(Map<String,Object> topoConf, TopologyContext context, OutputCollector collector)
    Analogue to bolt function.
    See Also:
      - `IBolt.prepare(Map, TopologyContext, OutputCollector)`

  - ### execute

    void execute(Tuple input)
    Analogue to bolt function.
    See Also:
      - `IBolt.execute(Tuple)`

  - ### cleanup

    void cleanup()
    Analogue to bolt function.
    See Also:
      - `IBolt.cleanup()`