Package org.apache.storm.topology

## Interface IWindowedBolt

- All Superinterfaces:
    `IComponent`, `Serializable`
  All Known Subinterfaces:
    `IStatefulWindowedBolt<T>`
  All Known Implementing Classes:
    `BaseStatefulWindowedBolt`, `BaseWindowedBolt`, `JoinBolt`, `SlidingWindowSumBolt`, `TestWindowBolt`, `TimeDataVerificationBolt`, `VerificationBolt`

      public interface IWindowedBolt
      extends IComponent

  A bolt abstraction for supporting time and count based sliding & tumbling windows.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `cleanup()` |
    `void` | `execute​(TupleWindow inputWindow)` | Process the tuple window and optionally emit new tuples based on the tuples in the input window.
    `TimestampExtractor` | `getTimestampExtractor()` | Return a `TimestampExtractor` for extracting timestamps from a tuple for event time based processing, or null for processing time.
    `void` | `prepare​(Map<String,​Object> topoConf, TopologyContext context, OutputCollector collector)` | This is similar to the `IBolt.prepare(Map, TopologyContext, OutputCollector)` except that while emitting, the tuples are automatically anchored to the tuples in the inputWindow.

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

      `declareOutputFields, getComponentConfiguration`

- - ### Method Detail

    - #### prepare

          void prepare​(Map<String,​Object> topoConf,
                       TopologyContext context,
                       OutputCollector collector)

      This is similar to the `IBolt.prepare(Map, TopologyContext, OutputCollector)` except that while emitting, the tuples are automatically anchored to the tuples in the inputWindow.

    - #### execute

          void execute​(TupleWindow inputWindow)

      Process the tuple window and optionally emit new tuples based on the tuples in the input window.

    - #### cleanup

          void cleanup()

    - #### getTimestampExtractor

          TimestampExtractor getTimestampExtractor()

      Return a `TimestampExtractor` for extracting timestamps from a tuple for event time based processing, or null for processing time.
      Returns:
        the timestamp extractor