java.lang.Object
org.apache.storm.topology.base.BaseComponent
All Implemented Interfaces:
EmptyQueueListener, Serializable, org.apache.storm.spout.ISpout, org.apache.storm.topology.IComponent, org.apache.storm.topology.IRichSpout, org.opensearch.action.ActionListener<org.opensearch.action.search.SearchResponse>

public class HybridSpout extends AggregationSpout implements EmptyQueueListener
Uses collapsing spouts to get an initial set of URLs and keys to query for and gets emptyQueue notifications from the URLBuffer to query OpenSearch for a specific key.
Since:
1.15
See Also:
  • Field Details

  • Constructor Details

    • HybridSpout

      public HybridSpout()
  • Method Details

    • open

      public void open(Map<String,Object> stormConf, org.apache.storm.task.TopologyContext context, org.apache.storm.spout.SpoutOutputCollector collector)
      Specified by:
      open in interface org.apache.storm.spout.ISpout
      Overrides:
      open in class AggregationSpout
    • emptyQueue

      public void emptyQueue(String queueName)
      Specified by:
      emptyQueue in interface EmptyQueueListener
    • onResponse

      public void onResponse(org.opensearch.action.search.SearchResponse response)
      Specified by:
      onResponse in interface org.opensearch.action.ActionListener<org.opensearch.action.search.SearchResponse>
      Overrides:
      onResponse in class AggregationSpout
    • sortValuesForKey

      protected void sortValuesForKey(String key, Object[] sortValues)
      Overrides:
      sortValuesForKey in class AggregationSpout