org.apache.storm.trident.planner

## Class SubtopologyBolt

- java.lang.Object
- - org.apache.storm.trident.planner.SubtopologyBolt

- All Implemented Interfaces:
    Serializable, IComponent, ITridentBatchBolt

      public class SubtopologyBolt
      extends Object
      implements ITridentBatchBolt

  A Bolt that does processing for a subsection of the complete graph.

  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `SubtopologyBolt.InitialReceiver`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SubtopologyBolt(org.apache.storm.shade.org.jgrapht.graph.DefaultDirectedGraph<Node,IndexedEdge> graph, Set<Node> nodes, Map<Node,String> batchGroups)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `cleanup()`
    `void` | `declareOutputFields(OutputFieldsDeclarer declarer)` Declare the output schema for all the streams of this topology.
    `void` | `execute(BatchInfo batchInfo, Tuple tuple)`
    `void` | `finishBatch(BatchInfo batchInfo)`
    `Map<String,Object>` | `getComponentConfiguration()` Declare configuration specific to this component.
    `Object` | `initBatchState(String batchGroup, Object batchId)`
    `void` | `prepare(Map<String,Object> conf, TopologyContext context, BatchOutputCollector batchCollector)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SubtopologyBolt

          public SubtopologyBolt(org.apache.storm.shade.org.jgrapht.graph.DefaultDirectedGraph<Node,IndexedEdge> graph,
                                 Set<Node> nodes,
                                 Map<Node,String> batchGroups)

  - ### Method Detail

    - #### prepare

          public void prepare(Map<String,Object> conf,
                              TopologyContext context,
                              BatchOutputCollector batchCollector)

      Specified by:
        `prepare` in interface `ITridentBatchBolt`

    - #### execute

          public void execute(BatchInfo batchInfo,
                              Tuple tuple)

      Specified by:
        `execute` in interface `ITridentBatchBolt`

    - #### finishBatch

          public void finishBatch(BatchInfo batchInfo)

      Specified by:
        `finishBatch` in interface `ITridentBatchBolt`

    - #### initBatchState

          public Object initBatchState(String batchGroup,
                                       Object batchId)

      Specified by:
        `initBatchState` in interface `ITridentBatchBolt`

    - #### cleanup

          public void cleanup()

      Specified by:
        `cleanup` in interface `ITridentBatchBolt`

    - #### declareOutputFields

          public void declareOutputFields(OutputFieldsDeclarer declarer)

      Description copied from interface: `IComponent`

      Declare the output schema for all the streams of this topology.

      Specified by:
        `declareOutputFields` in interface `IComponent`
      Parameters:
        `declarer` - this is used to declare output stream ids, output fields, and whether or not each output stream is a direct stream

    - #### getComponentConfiguration

          public Map<String,Object> getComponentConfiguration()

      Description copied from interface: `IComponent`

      Declare configuration specific to this component. Only a subset of the “topology.*” configs can be overridden. The component configuration can be further overridden when constructing the topology using `TopologyBuilder`

      Specified by:
        `getComponentConfiguration` in interface `IComponent`

Copyright © 2021 The Apache Software Foundation. All rights reserved.