public abstract class RedundantSelfJoinExecutor extends SelfJoinLikeExecutor implements InnerJoinExecutor
SelfJoinLikeExecutor.AtomUnificationException, SelfJoinLikeExecutor.ConcreteProposal, SelfJoinLikeExecutor.PredicateLevelProposal| Modifier | Constructor and Description |
|---|---|
protected |
RedundantSelfJoinExecutor(IntermediateQueryFactory iqFactory,
SubstitutionFactory substitutionFactory,
ImmutableUnificationTools unificationTools,
TermFactory termFactory) |
| Modifier and Type | Method and Description |
|---|---|
NodeCentricOptimizationResults<InnerJoinNode> |
apply(InnerJoinOptimizationProposal highLevelProposal,
IntermediateQuery query,
QueryTreeComponent treeComponent) |
protected Optional<SelfJoinLikeExecutor.ConcreteProposal> |
createConcreteProposal(com.google.common.collect.ImmutableList<SelfJoinLikeExecutor.PredicateLevelProposal> predicateProposals,
com.google.common.collect.ImmutableMultimap<RelationPredicate,ExtensionalDataNode> initialDataNodeMap,
com.google.common.collect.ImmutableList<Variable> priorityVariables) |
protected abstract Optional<SelfJoinLikeExecutor.PredicateLevelProposal> |
proposePerPredicate(InnerJoinNode joinNode,
com.google.common.collect.ImmutableCollection<ExtensionalDataNode> initialNodes,
RelationPredicate predicate,
com.google.common.collect.ImmutableList<Variable> priorityVariables,
IntermediateQuery query) |
extractArguments, extractDataNodes, extractSubstitutions, mergeSubstitutions, prioritizeVariables, proposeForGroupingMap, unifyRedundantNodes, updateJoinNodeAndPropagateSubstitutionprotected RedundantSelfJoinExecutor(IntermediateQueryFactory iqFactory, SubstitutionFactory substitutionFactory, ImmutableUnificationTools unificationTools, TermFactory termFactory)
public NodeCentricOptimizationResults<InnerJoinNode> apply(InnerJoinOptimizationProposal highLevelProposal, IntermediateQuery query, QueryTreeComponent treeComponent) throws InvalidQueryOptimizationProposalException, EmptyQueryException
apply in interface ProposalExecutor<InnerJoinOptimizationProposal,NodeCentricOptimizationResults<InnerJoinNode>>InvalidQueryOptimizationProposalExceptionEmptyQueryExceptionprotected Optional<SelfJoinLikeExecutor.ConcreteProposal> createConcreteProposal(com.google.common.collect.ImmutableList<SelfJoinLikeExecutor.PredicateLevelProposal> predicateProposals, com.google.common.collect.ImmutableMultimap<RelationPredicate,ExtensionalDataNode> initialDataNodeMap, com.google.common.collect.ImmutableList<Variable> priorityVariables)
protected abstract Optional<SelfJoinLikeExecutor.PredicateLevelProposal> proposePerPredicate(InnerJoinNode joinNode, com.google.common.collect.ImmutableCollection<ExtensionalDataNode> initialNodes, RelationPredicate predicate, com.google.common.collect.ImmutableList<Variable> priorityVariables, IntermediateQuery query) throws SelfJoinLikeExecutor.AtomUnificationException
Copyright © 2009–2020 Free University of Bozen-Bolzano. All rights reserved.