org.apache.storm.topology

## Interface IComponent

- All Superinterfaces:
    Serializable
  All Known Subinterfaces:
    IBasicBolt, IBatchBolt<T>, IRichBolt, IRichSpout, IRichStateSpout, IStatefulBolt<T>, IStatefulComponent<T>, IStatefulWindowedBolt<T>, ITridentBatchBolt, IWindowedBolt
  All Known Implementing Classes:
    AbstractEsBolt, AbstractHBaseBolt, AbstractHdfsBolt, AbstractJdbcBolt, AbstractMongoBolt, AbstractRankerBolt, AbstractRedisBolt, AnchoredWordCount.RandomSentenceSpout, AnchoredWordCount.SplitSentence, AnchoredWordCount.WordCount, AvroGenericRecordBolt, BaseBasicBolt, BaseBatchBolt, BaseCassandraBolt, BaseComponent, BaseRichBolt, BaseRichSpout, BaseStatefulBolt, BaseStatefulBoltExecutor, BaseStatefulWindowedBolt, BaseTickTupleAwareRichBolt, BaseWindowedBolt, BasicBoltExecutor, BasicDRPCTopology.ExclaimBolt, BatchBoltExecutor, BatchCassandraWriterBolt, BlobStoreAPIWordCountTopology.FilterWords, BlobStoreAPIWordCountTopology.RandomSentenceSpout, BlobStoreAPIWordCountTopology.SplitSentence, BoltTracker, BucketTestHiveTopology.UserDataSpout, CassandraWriterBolt, CheckpointSpout, CheckpointTupleForwarder, ClojureBolt, ClojureSpout, ConstSpout, CoordinatedBolt, CountBolt, DevNullBolt, DRPCSpout, EsIndexBolt, EsIndexTopology.UserDataSpout, EsLookupBolt, EsPercolateBolt, EventHubBolt, EventHubSpout, ExclamationTopology.ExclamationBolt, ExclamationTopology.ExclamationBolt, ExclamationTopology.FixedOrderWordSpout, FastWordCountTopology.FastRandomSentenceSpout, FastWordCountTopology.SplitSentence, FastWordCountTopology.WordCount, FeederSpout, FileReadSpout, FixedTupleSpout, FluxShellBolt, FluxShellSpout, GenericBolt, HBaseBolt, HBaseLookupBolt, HdfsBolt, HdfsFileTopology.MyBolt, HdfsFileTopology.SentenceSpout, HdfsSpout, HdfsSpoutTopology.ConstBolt, HiveBolt, HiveTopology.UserDataSpout, HiveTopologyPartitioned.UserDataSpout, IdBolt, IdentityBolt, IdentityBolt, IncrementingSpout, InOrderDeliveryTest.Check, InOrderDeliveryTest.InOrderSpout, IntermediateRankingsBolt, JdbcInsertBolt, JdbcLookupBolt, JmsBolt, JmsSpout, JoinBolt, JoinResult, KafkaBolt, KafkaSpout, KafkaSpoutTestBolt, KeyedFairBolt, KinesisSpout, LambdaBiConsumerBolt, LambdaConsumerBolt, LambdaSpout, LoadBolt, LoadSpout, LogInfoBolt, LookupWordCount.PrintWordTotalCountBolt, ManualDRPC.ExclamationBolt, MasterBatchCoordinator, MetricGenSpout, MongoInsertBolt, MongoLookupBolt, MongoUpdateBolt, MqttBolt, MqttSpout, MultipleLoggerTopology.ExclamationLoggingBolt, MultiThreadWordCountTopology.MultiThreadedSplitSentence, OpenTsdbBolt, PersistentWindowedBoltExecutor, PMMLPredictorBolt, PrepareBatchBolt, PrepareRequest, PrinterBolt, PythonShellMetricsBolt, PythonShellMetricsSpout, RandomIntegerSpout, RandomSentenceSpout, RandomSentenceSpout.TimeStamped, RawInputFromCSVSpout, ReachTopology.CountAggregator, ReachTopology.GetFollowers, ReachTopology.GetTweeters, ReachTopology.PartialUniquer, RedisFilterBolt, RedisLookupBolt, RedisStoreBolt, ResourceAwareExampleTopology.ExclamationBolt, ReturnResults, RichShellBolt, RichShellSpout, RichSpoutBatchTriggerer, RocketMqBolt, RocketMqSpout, RollingCountAggBolt, RollingCountBolt, SequenceFileBolt, SequenceFileTopology.MyBolt, SequenceFileTopology.SentenceSpout, SingleJoinBolt, SlidingWindowSumBolt, SocketBolt, SocketSpout, SolrFieldsSpout, SolrJsonSpout, SolrUpdateBolt, SplitSentenceBolt, SpoutTracker, StatefulBoltExecutor, StatefulTopology.PrinterBolt, StatefulWindowedBoltExecutor, StatefulWordCounter, StringGenSpout, SubtopologyBolt, TestAggregatesCounter, TestConfBolt, TestEventLogSpout, TestEventOrderCheckBolt, TestGlobalCount, TestPlannerBolt, TestPlannerSpout, TestPrintBolt, TestWindowBolt, TestWordBytesCounter, TestWordCounter, TestWordSpout, ThroughputVsLatency.FastRandomSentenceSpout, ThroughputVsLatency.SplitSentence, ThroughputVsLatency.WordCount, TimeDataIncrementingSpout, TimeDataVerificationBolt, TotalRankingsBolt, TotalWordCounter, TotalWordCounter, TridentBoltExecutor, TridentSpoutCoordinator, TridentSpoutExecutor, TupleCaptureBolt, UserSpout, VerificationBolt, WhitelistWordCount.PrintWordTotalCountBolt, WindowedBoltExecutor, WordCountBolt, WordCounter, WordCounter, WordCounter, WordCounter, WordCounter, WordCountTopology.SplitSentence, WordCountTopologyNode.RandomSentence, WordCountTopologyNode.SplitSentence, WordCountTopologyNode.WordCount, WordGenSpout, WordSpout, WordSpout, WordSpout

      public interface IComponent
      extends Serializable

  Common methods for all possible components in a topology. This interface is used when defining topologies using the Java API.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `declareOutputFields(OutputFieldsDeclarer declarer)` Declare the output schema for all the streams of this topology.
    `Map<String,Object>` | `getComponentConfiguration()` Declare configuration specific to this component.

- - ### Method Detail

    - #### declareOutputFields

          void declareOutputFields(OutputFieldsDeclarer declarer)

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

      Parameters:
        `declarer` - this is used to declare output stream ids, output fields, and whether or not each output stream is a direct stream

    - #### getComponentConfiguration

          Map<String,Object> getComponentConfiguration()

      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`

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