Class QueryStageBase<T extends QueryStageConfig>

java.lang.Object
com.lucidworks.querying.api.QueryStageBase<T>
Type Parameters:
T - query stage configuration class
All Implemented Interfaces:
QueryStage<T>

public abstract class QueryStageBase<T extends QueryStageConfig> extends Object implements QueryStage<T>
Convenient base class for query pipeline stage containing default initialization logic. Extend this class to implement custom query pipeline stage:
 @Stage(type = "myStage", configClass = MyStageConfig.class)
 public class MyStage extends QueryStageBase<MyStageConfig> {

   @Override
   public QueryRequestAndResponse process(QueryRequestAndResponse query, Context context) {
     // get configuration
     String myBlobId = config.myBlobdId();

     // call Fusion API methods
     fusion.blobs().getBlobContent(myBlobId);

     // further query processing logic
   }
 }
 
  • Field Details

  • Constructor Details

    • QueryStageBase

      public QueryStageBase()
  • Method Details

    • init

      public void init(T config, Fusion fusion)
      Description copied from interface: QueryStage
      Stage initialization callback. This method will be called by Fusion when query stage instance is created and before 'process' method is called. Stage configuration will be passed by Fusion as QueryStageConfig instance. Additionally Fusion interface instance will be passed to allow calling Fusion API from the query stage.
      Specified by:
      init in interface QueryStage<T extends QueryStageConfig>
      Parameters:
      config - query pipeline stage configuration
      fusion - Fusion API instance