Class QueryProcContextBuilder

java.lang.Object
se.liu.ida.hefquin.engine.queryproc.QueryProcContextBuilder

public class QueryProcContextBuilder extends Object
Such a builder can be used to create a customizable QueryProcContext object that provides access to components and options to be used by the query-processing components of HeFQUIN.

The typical way to create such a builder is to use the HeFQUINEngine.getQueryProcContextBuilder() function.

The builder can be used multiple times (i.e., to created multiple QueryProcContext objects), and the QueryProcContext objects that it creates can also be used multiple times (i.e., for processing multiple queries).

  • Field Details

  • Constructor Details

  • Method Details

    • setSourceAssignmentPrinter

      public QueryProcContextBuilder setSourceAssignmentPrinter(LogicalPlanPrinter p)
      Sets the source assignment printer to be used within the query processing context.
      Parameters:
      p - - a logical-plan printer to be used for printing a source assignment that is the input to logical plan optimization; this argument may be null, which means that source assignment printing will be skipped in the created query processing context (for this case, it is also possible to omit calling this method at all)
      Returns:
      this builder instance for method chaining
    • setLogicalPlanPrinter

      public QueryProcContextBuilder setLogicalPlanPrinter(LogicalPlanPrinter p)
      Sets the logical-plan printer to be used within the query processing context.
      Parameters:
      p - - a logical-plan printer to be used for printing the logical plan after logical plan optimization; this argument may be null, which means that logical-plan printing will be skipped in the created query processing context (for this case, it is also possible to omit calling this method at all)
      Returns:
      this builder instance for method chaining
    • setPhysicalPlanPrinter

      public QueryProcContextBuilder setPhysicalPlanPrinter(PhysicalPlanPrinter p)
      Sets the physical-plan printer to be used within the query processing context.
      Parameters:
      p - - a physical-plan printer to be used for printing the physical plan after physical plan optimization; this argument may be null, which means that physical-plan printing will be skipped in the created query processing context (for this case, it is also possible to omit calling this method at all)
      Returns:
      this builder instance for method chaining
    • setExecutablePlanPrinter

      public QueryProcContextBuilder setExecutablePlanPrinter(ExecutablePlanPrinter p)
      Sets the executable-plan printer to be used within the query processing context.
      Parameters:
      p - - an executable-plan printer to be used for printing the executable plan before executing it; this argument may be null, which means that executable-plan printing will be skipped in the created query processing context (for this case, it is also possible to omit calling this method at all)
      Returns:
      this builder instance for method chaining
    • setIsExperimentRun

      public QueryProcContextBuilder setIsExperimentRun(boolean set)
    • setSkipExecution

      public QueryProcContextBuilder setSkipExecution(boolean set)
    • build

      public QueryProcContext build()