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

    All Methods Instance Methods Abstract Methods
    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 Detail

    - #### 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()`