Class EquiJoin

  • All Implemented Interfaces:
    Condition

    public class EquiJoin
    extends AbstractCondition
    EquiJoin implements an equi join condition.
    • Constructor Detail

      • EquiJoin

        public EquiJoin​(MultiColumnQueryHits inner,
                        int innerScoreNodeIndex,
                        NamespaceMappings nsMappings,
                        IndexReader reader,
                        Name innerProperty,
                        Name outerProperty)
                 throws IOException,
                        IllegalNameException
        Creates a new equi join condition.
        Parameters:
        inner - the inner query hits.
        innerScoreNodeIndex - the selector name for the inner query hits.
        nsMappings - the namespace mappings
        reader - the index reader.
        innerProperty - the name of the property of the inner query hits.
        outerProperty - the name of the property of the outer query hits.
        Throws:
        IOException - if an error occurs while reading from the index.
        IllegalNameException
    • Method Detail

      • getMatchingScoreNodes

        public ScoreNode[][] getMatchingScoreNodes​(ScoreNode outer)
                                            throws IOException
        Returns the matching inner score nodes for the given outer score node sn.
        Parameters:
        outer - the current score nodes of the outer source.
        Returns:
        the matching score nodes in the inner source.
        Throws:
        IOException - if an error occurs while evaluating the condition.