Class IndexerBolt
java.lang.Object
org.apache.storm.topology.base.BaseComponent
org.apache.storm.topology.base.BaseRichBolt
com.digitalpebble.stormcrawler.indexing.AbstractIndexerBolt
com.digitalpebble.stormcrawler.opensearch.bolt.IndexerBolt
- All Implemented Interfaces:
com.github.benmanes.caffeine.cache.RemovalListener<String,,List<org.apache.storm.tuple.Tuple>> Serializable,org.apache.storm.task.IBolt,org.apache.storm.topology.IComponent,org.apache.storm.topology.IRichBolt,org.opensearch.action.bulk.BulkProcessor.Listener
public class IndexerBolt
extends AbstractIndexerBolt
implements com.github.benmanes.caffeine.cache.RemovalListener<String,List<org.apache.storm.tuple.Tuple>>, org.opensearch.action.bulk.BulkProcessor.Listener
Sends documents to opensearch. Indexes all the fields from the tuples or a Map
<String,Object> from a named field.
- See Also:
-
Field Summary
Fields inherited from class com.digitalpebble.stormcrawler.indexing.AbstractIndexerBolt
canonicalMetadataParamName, ignoreEmptyFieldValueParamName, metadata2fieldParamName, metadataFilterParamName, textFieldParamName, textLengthParamName, urlFieldParamName -
Constructor Summary
ConstructorsConstructorDescriptionIndexerBolt(String indexName) Sets the index name instead of taking it from the configuration. -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidafterBulk(long executionId, org.opensearch.action.bulk.BulkRequest request, org.opensearch.action.bulk.BulkResponse response) voidbeforeBulk(long executionId, org.opensearch.action.bulk.BulkRequest request) voidcleanup()voidexecute(org.apache.storm.tuple.Tuple tuple) protected StringMust be overridden for implementing custom index names based on some metadata information By Default, indexName coming from config is usedvoidonRemoval(@Nullable String key, @Nullable List<org.apache.storm.tuple.Tuple> value, @NotNull com.github.benmanes.caffeine.cache.RemovalCause cause) voidprepare(Map<String, Object> conf, org.apache.storm.task.TopologyContext context, org.apache.storm.task.OutputCollector collector) Methods inherited from class com.digitalpebble.stormcrawler.indexing.AbstractIndexerBolt
declareOutputFields, fieldNameForText, fieldNameForURL, filterDocument, filterMetadata, getDocumentID, ignoreEmptyFields, trimText, valueForURLMethods inherited from class org.apache.storm.topology.base.BaseComponent
getComponentConfigurationMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.storm.topology.IComponent
getComponentConfiguration
-
Constructor Details
-
IndexerBolt
public IndexerBolt() -
IndexerBolt
Sets the index name instead of taking it from the configuration. *
-
-
Method Details
-
prepare
public void prepare(Map<String, Object> conf, org.apache.storm.task.TopologyContext context, org.apache.storm.task.OutputCollector collector) - Specified by:
preparein interfaceorg.apache.storm.task.IBolt- Overrides:
preparein classAbstractIndexerBolt
-
onRemoval
-
cleanup
public void cleanup()- Specified by:
cleanupin interfaceorg.apache.storm.task.IBolt- Overrides:
cleanupin classorg.apache.storm.topology.base.BaseRichBolt
-
execute
public void execute(org.apache.storm.tuple.Tuple tuple) - Specified by:
executein interfaceorg.apache.storm.task.IBolt
-
getIndexName
Must be overridden for implementing custom index names based on some metadata information By Default, indexName coming from config is used -
beforeBulk
public void beforeBulk(long executionId, org.opensearch.action.bulk.BulkRequest request) - Specified by:
beforeBulkin interfaceorg.opensearch.action.bulk.BulkProcessor.Listener
-
afterBulk
public void afterBulk(long executionId, org.opensearch.action.bulk.BulkRequest request, org.opensearch.action.bulk.BulkResponse response) - Specified by:
afterBulkin interfaceorg.opensearch.action.bulk.BulkProcessor.Listener
-
afterBulk
public void afterBulk(long executionId, org.opensearch.action.bulk.BulkRequest request, Throwable failure) - Specified by:
afterBulkin interfaceorg.opensearch.action.bulk.BulkProcessor.Listener
-