Interface IPTraceableTraceProvider
- All Known Subinterfaces:
IRewriterTraceCollector
- All Known Implementing Classes:
MappingTraceCollector
,NopTraceCollector
public interface IPTraceableTraceProvider
This interface provides methods to trace the
PTraceable
s 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 canonicalPTraceable
s in the original query which are the sources of the given derivativePTraceable
according 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 thePTraceable
s in the rewritten query which are the destinations of the given sourcePTraceable
according to the transformation.boolean
isRemoved
(PTraceable traceable) Returns whether the given traceable element has been removed by every rewriter for a reason.
-
Method Details
-
getCanonicalTraceables
Find and return the canonicalPTraceable
s in the original query which are the sources of the given derivativePTraceable
according to the transformation.- Parameters:
derivative
- aPTraceable
which is contained by thePQuery
produced by the associated rewriter- Since:
- 2.0
-
getRewrittenTraceables
Find and return thePTraceable
s in the rewritten query which are the destinations of the given sourcePTraceable
according to the transformation.- Parameters:
source
- aPTraceable
which is contained by aPQuery
before 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
-