Class NoIndexIndexer

java.lang.Object
nz.org.riskscape.engine.join.JoinIndexer
nz.org.riskscape.engine.join.NoIndexIndexer

public class NoIndexIndexer extends JoinIndexer

JoinIndexer that does nothing, so should always work, albeit slowly

  • Field Details

    • DEFAULT_INITIAL_INDEX_SIZE

      public static final int DEFAULT_INITIAL_INDEX_SIZE

      The default capacity that the index will be created to contain.

      The NoIndexIndexer contains items individually. So for best performance the initial index should be as large as the expected number of items.

      See Also:
    • CONSTRUCTOR

      public static final JoinIndexer.Constructor CONSTRUCTOR
  • Constructor Details

    • NoIndexIndexer

      public NoIndexIndexer(nz.org.riskscape.engine.join.Join join, int initialIndexSize, nz.org.riskscape.engine.rl.ExpressionRealizer expressionRealizer)
  • Method Details

    • addToIndex

      public void addToIndex(nz.org.riskscape.engine.Tuple rhs)
      Specified by:
      addToIndex in class JoinIndexer
    • createRhsIterator

      public nz.org.riskscape.engine.relation.TupleIterator createRhsIterator(nz.org.riskscape.engine.Tuple lhs)
      Description copied from class: JoinIndexer

      Create a TupleIterator that will contain at least the set of Tuples that are needed to completely join the lhs to the rhs based on the join.

      Specified by:
      createRhsIterator in class JoinIndexer
    • isUsable

      public boolean isUsable()
      Specified by:
      isUsable in class JoinIndexer
      Returns:
      true if this join can be used, e.g. it's suitable for the query and join. This is intended as a simpler way of providing a set of implementations such that the DefaultJoiner can work through which ones are appropriate by checking this method.
    • toString

      public String toString()
      Overrides:
      toString in class Object