Class ConjunctGeneratorRPQ

java.lang.Object
dev.roanh.gmark.query.conjunct.rpq.ConjunctGeneratorRPQ
All Implemented Interfaces:
ConjunctGenerator

public class ConjunctGeneratorRPQ extends Object implements ConjunctGenerator
Conjunct generator for RPQs (Regular Path Queries).
  • Field Details

    • workload

      private WorkloadRPQ workload
      The workload specifying what RPQs to generate.
  • Constructor Details

    • ConjunctGeneratorRPQ

      public ConjunctGeneratorRPQ(WorkloadRPQ wl)
      Constructs a new RPQ generator using the given workload.
      Parameters:
      wl - The workload specification.
      See Also:
  • Method Details

    • generateConjunct

      public Conjunct generateConjunct(SelectivityGraph gSel, SelectivityType start, SelectivityType end, Variable source, Variable target, boolean star) throws GenerationException
      Description copied from interface: ConjunctGenerator
      Generates a single conjunct using the given selectivity graph and with the start of the conjunct being the given start selectivity type and the end of the conjunct the given end selectivity type.
      Specified by:
      generateConjunct in interface ConjunctGenerator
      Parameters:
      gSel - The selectivity graph to use (if required).
      start - The starting selectivity type of the conjunct to generate.
      end - The end selectivity type of the conjunct to generate.
      source - The source variable of the conjunct.
      target - The target variable of the conjunct.
      star - True if the conjunct should have a Kleene star above it.
      Returns:
      The randomly generated conjunct.
      Throws:
      GenerationException - When some exception occurred that prevented a conjunct from begin generated.