Class SubQueryFromComplexJoinExtraNormalizer
- java.lang.Object
-
- it.unibz.inf.ontop.iq.transform.impl.DefaultRecursiveIQTreeVisitingTransformer
-
- it.unibz.inf.ontop.generation.normalization.impl.SubQueryFromComplexJoinExtraNormalizer
-
- All Implemented Interfaces:
DialectExtraNormalizer,IQTreeTransformer,IQTreeVisitingTransformer
public class SubQueryFromComplexJoinExtraNormalizer extends DefaultRecursiveIQTreeVisitingTransformer implements DialectExtraNormalizer
When (left,inner) joins are having (left,inner) joins as children. Adds a ConstructionNode in those children to force the creation of a sub-query Useful for Dremio.
-
-
Field Summary
-
Fields inherited from class it.unibz.inf.ontop.iq.transform.impl.DefaultRecursiveIQTreeVisitingTransformer
iqFactory
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedSubQueryFromComplexJoinExtraNormalizer(CoreSingletons coreSingletons)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IQTreetransform(IQTree tree, VariableGenerator variableGenerator)IQTreetransformInnerJoin(IQTree tree, InnerJoinNode rootNode, it.unibz.inf.ontop.com.google.common.collect.ImmutableList<IQTree> children)IQTreetransformLeftJoin(IQTree tree, LeftJoinNode rootNode, IQTree leftChild, IQTree rightChild)-
Methods inherited from class it.unibz.inf.ontop.iq.transform.impl.DefaultRecursiveIQTreeVisitingTransformer
transformAggregation, transformBinaryNonCommutativeNode, transformConstruction, transformDistinct, transformEmpty, transformExtensionalData, transformFilter, transformIntensionalData, transformLeaf, transformNaryCommutativeNode, transformNonStandardBinaryNonCommutativeNode, transformNonStandardLeafNode, transformNonStandardNaryNode, transformNonStandardUnaryNode, transformOrderBy, transformSlice, transformTrue, transformUnaryNode, transformUnion, transformValues
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface it.unibz.inf.ontop.iq.transform.IQTreeVisitingTransformer
transform
-
-
-
-
Constructor Detail
-
SubQueryFromComplexJoinExtraNormalizer
@Inject protected SubQueryFromComplexJoinExtraNormalizer(CoreSingletons coreSingletons)
-
-
Method Detail
-
transform
public IQTree transform(IQTree tree, VariableGenerator variableGenerator)
- Specified by:
transformin interfaceDialectExtraNormalizer
-
transformLeftJoin
public IQTree transformLeftJoin(IQTree tree, LeftJoinNode rootNode, IQTree leftChild, IQTree rightChild)
- Specified by:
transformLeftJoinin interfaceIQTreeVisitingTransformer- Overrides:
transformLeftJoinin classDefaultRecursiveIQTreeVisitingTransformer
-
transformInnerJoin
public IQTree transformInnerJoin(IQTree tree, InnerJoinNode rootNode, it.unibz.inf.ontop.com.google.common.collect.ImmutableList<IQTree> children)
- Specified by:
transformInnerJoinin interfaceIQTreeVisitingTransformer- Overrides:
transformInnerJoinin classDefaultRecursiveIQTreeVisitingTransformer
-
-