Class HeFQUINEngineBuilder

java.lang.Object
se.liu.ida.hefquin.engine.HeFQUINEngineBuilder

public class HeFQUINEngineBuilder extends Object
Builder class that can be used to create a fully-wired instance of HeFQUINEngine.
  • Constructor Details

    • HeFQUINEngineBuilder

      public HeFQUINEngineBuilder()
  • Method Details

    • withFederationCatalog

      public HeFQUINEngineBuilder withFederationCatalog(FederationCatalog fedCat)
      Sets the federation catalog to be used by the engine.
      Parameters:
      fedCat - a federation catalog
      Returns:
      this builder instance for method chaining
    • withFederationCatalog

      public HeFQUINEngineBuilder withFederationCatalog(String fedCatFile)
      Sets the federation catalog to be used by the engine.
      Parameters:
      fedCatFile - a federation catalog file
      Returns:
      this builder instance for method chaining
    • withFederationCatalogInFiles

      public HeFQUINEngineBuilder withFederationCatalogInFiles(List<String> fedCatFiles)
      Sets the federation catalog to be used by the engine.
      Parameters:
      fedCatFiles - a list of federation catalog files
      Returns:
      this builder instance for method chaining
    • withFederationCatalogInModels

      public HeFQUINEngineBuilder withFederationCatalogInModels(List<org.apache.jena.rdf.model.Model> fedCatModels)
      Sets the federation catalog to be used by the engine.
      Parameters:
      fedCatModels - a list of federation catalog models
      Returns:
      this builder instance for method chaining
    • withFederationCatalog

      public HeFQUINEngineBuilder withFederationCatalog(org.apache.jena.rdf.model.Model fedCatModel)
      Sets the federation catalog to be used by the engine.
      Parameters:
      fedCatModel - a federation catalog model
      Returns:
      this builder instance for method chaining
    • withEngineConfiguration

      public HeFQUINEngineBuilder withEngineConfiguration(org.apache.jena.rdf.model.Model engineConf)
      Sets the engine configuration to be used by the engine.
      Parameters:
      engineConf - an engine configuration
      Returns:
      this builder instance for method chaining
    • withEngineConfiguration

      public HeFQUINEngineBuilder withEngineConfiguration(String engineConfFile)
      Sets the engine configuration to be used by the engine.
      Parameters:
      engineConfFile - an engine configuration file
      Returns:
      this builder instance for method chaining
    • build

      public HeFQUINEngine build()
      Returns a HeFQUINEngine instance that is created using the parameters configured via this builder. The federation catalog must be provided via withFederationCatalog, default values will be used for all other components unless specified explicitly.
      Returns:
      an initialized HeFQUINEngine instance
      Throws:
      IllegalStateException - if the federation catalog has not been set
    • integrateEngineIntoJena

      protected void integrateEngineIntoJena(QueryProcessor qProc)
      This method integrates the given processor of the HeFQUIN engine into the query processing machinery of Jena ARQ.