Interface IPTraceableTraceProvider
- All Known Subinterfaces:
IRewriterTraceCollector
- All Known Implementing Classes:
MappingTraceCollector,NopTraceCollector
public interface IPTraceableTraceProvider
This interface provides methods to trace the
PTraceables of a transformed PQuery produced by
a PDisjunctionRewriter. In case the associated rewriter is a composite (a.k.a. PDisjunctionRewriterCacher),
this trace provider handles traces end-to-end, hiding all the intermediate transformation steps.- Since:
- 1.6
-
Method Summary
Modifier and TypeMethodDescriptiongetCanonicalTraceables(PTraceable derivative) Find and return the canonicalPTraceables in the original query which are the sources of the given derivativePTraceableaccording to the transformation.getRemovalReasons(PTraceable traceable) Returns the reasons for which the traceable element has been removed by the rewriters.getRewrittenTraceables(PTraceable source) Find and return thePTraceables in the rewritten query which are the destinations of the given sourcePTraceableaccording to the transformation.booleanisRemoved(PTraceable traceable) Returns whether the given traceable element has been removed by every rewriter for a reason.
-
Method Details
-
getCanonicalTraceables
Find and return the canonicalPTraceables in the original query which are the sources of the given derivativePTraceableaccording to the transformation.- Parameters:
derivative- aPTraceablewhich is contained by thePQueryproduced by the associated rewriter- Since:
- 2.0
-
getRewrittenTraceables
Find and return thePTraceables in the rewritten query which are the destinations of the given sourcePTraceableaccording to the transformation.- Parameters:
source- aPTraceablewhich is contained by aPQuerybefore rewriting- Since:
- 2.0
-
isRemoved
Returns whether the given traceable element has been removed by every rewriter for a reason. -
getRemovalReasons
Returns the reasons for which the traceable element has been removed by the rewriters.- Returns:
- the reasons of removal during rewriting
- Since:
- 2.0
-