# Package org.apache.storm.streams.processors

- Interface Summary
  Interface | Description
  --- | ---
  BatchProcessor | Top level marker interface for processors that computes results for a batch of tuples like Aggregate, Join etc.
  Processor<T> | A processor processes a stream of elements and produces some result.
  ProcessorContext<T> | Context information passed to the `Processor`.
  StatefulProcessor<K,​V> | Top level interface for processors that does stateful processing.

- Class Summary
  Class | Description
  --- | ---
  AggregateByKeyProcessor<K,​V,​A,​R> |
  AggregateProcessor<T,​A,​R> |
  BranchProcessor<T> |
  ChainedProcessorContext<T> | A composite context that holds a chain of `ProcessorContext`.
  CoGroupByKeyProcessor<K,​V1,​V2> | co-group by key implementation.
  EmittingProcessorContext<T> | A context that emits the results to downstream processors which are in another bolt.
  FilterProcessor<T> |
  FlatMapProcessor<T,​R> |
  FlatMapValuesProcessor<K,​V,​R> |
  ForEachProcessor<T> |
  ForwardingProcessorContext<T> | A context that emits the results to downstream processors which are in the same bolt.
  JoinProcessor<K,​R,​V1,​V2> | Provides equi-join implementation based on simple hash-join.
  MapProcessor<T,​R> |
  MapValuesProcessor<K,​V,​R> |
  MergeAggregateByKeyProcessor<K,​V,​A,​R> |
  MergeAggregateProcessor<T,​A,​R> |
  PeekProcessor<T> |
  ReduceByKeyProcessor<K,​V> |
  ReduceProcessor<T> |
  StateQueryProcessor<K,​V> |
  UpdateStateByKeyProcessor<K,​V,​R> |

- Enum Summary
  Enum | Description
  --- | ---
  JoinProcessor.JoinType |