Class HeFQUINEngineBuilder
java.lang.Object
se.liu.ida.hefquin.engine.HeFQUINEngineBuilder
Builder class that can be used to create a fully-wired instance of
HeFQUINEngine
.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()
Returns aHeFQUINEngine
instance that is created using the parameters configured via this builder.setExperimentRun
(boolean isExperimentRun) Sets whether the engine should treat the current run as part of an experiment.setSkipExecution
(boolean skip) Sets whether the engine should skip execution after query planning.withEngineConfiguration
(String engineConfFile) Sets the engine configuration to be used by the engine.withEngineConfiguration
(org.apache.jena.rdf.model.Model engineConf) Sets the engine configuration to be used by the engine.withFederationCatalog
(String fedCatFile) Sets the federation catalog to be used by the engine.withFederationCatalog
(org.apache.jena.rdf.model.Model fedCatModel) Sets the federation catalog to be used by the engine.Sets the federation catalog to be used by the engine.withLogicalPlanPrinter
(LogicalPlanPrinter printer) Sets the logical plan printer to be used by the engine.Sets the physical plan printer to be used by the engine.Sets the source assignment printer to be used by the engine.
-
Constructor Details
-
HeFQUINEngineBuilder
public HeFQUINEngineBuilder()
-
-
Method Details
-
withFederationCatalog
Sets the federation catalog to be used by the engine.- Parameters:
fedCat
- a federation catalog- Returns:
- this builder instance for method chaining
-
withFederationCatalog
Sets the federation catalog to be used by the engine.- Parameters:
fedCatFile
- a federation catalog file- Returns:
- this builder instance for method chaining
-
withFederationCatalog
Sets the federation catalog to be used by the engine.- Parameters:
fedCatModel
- a federation catalog model- Returns:
- this builder instance for method chaining
-
withEngineConfiguration
Sets the engine configuration to be used by the engine.- Parameters:
engineConf
- an engine configuration- Returns:
- this builder instance for method chaining
-
withEngineConfiguration
Sets the engine configuration to be used by the engine.- Parameters:
engineConfFile
- an engine configuration file- Returns:
- this builder instance for method chaining
-
withLogicalPlanPrinter
Sets the logical plan printer to be used by the engine.- Parameters:
printer
- a logical plan printer to be used when printing the logical plans after logical plan optimization- Returns:
- this builder instance for method chaining
-
withPhysicalPlanPrinter
Sets the physical plan printer to be used by the engine.- Parameters:
printer
- a physical plan printer- Returns:
- this builder instance for method chaining
-
withSourceAssignmentPrinter
Sets the source assignment printer to be used by the engine.- Parameters:
printer
- a logical plan printer to be used when printing a source assignment that is the input to logical plan optimization- Returns:
- this builder instance for method chaining
-
setSkipExecution
Sets whether the engine should skip execution after query planning.- Parameters:
skip
- whether to skip query execution- Returns:
- this builder instance for method chaining
-
setExperimentRun
Sets whether the engine should treat the current run as part of an experiment.- Parameters:
isExperimentRun
- whether this is an experimental run- Returns:
- this builder instance for method chaining
-
build
Returns aHeFQUINEngine
instance that is created using the parameters configured via this builder. The federation catalog must be provided viawithFederationCatalog
, 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
-