Interface IPTraceableTraceProvider
-
- All Known Subinterfaces:
IRewriterTraceCollector
- All Known Implementing Classes:
MappingTraceCollector,NopTraceCollector
public interface IPTraceableTraceProviderThis interface provides methods to trace thePTraceables of a transformedPQueryproduced by aPDisjunctionRewriter. 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
- No Implement:
- This interface is not intended to be implemented by clients.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.stream.Stream<PTraceable>getCanonicalTraceables(PTraceable derivative)Find and return the canonicalPTraceables in the original query which are the sources of the given derivativePTraceableaccording to the transformation.java.util.stream.Stream<IDerivativeModificationReason>getRemovalReasons(PTraceable traceable)Returns the reasons for which the traceable element has been removed by the rewriters.java.util.stream.Stream<PTraceable>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 Detail
-
getCanonicalTraceables
java.util.stream.Stream<PTraceable> getCanonicalTraceables(PTraceable derivative)
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
java.util.stream.Stream<PTraceable> getRewrittenTraceables(PTraceable source)
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
boolean isRemoved(PTraceable traceable)
Returns whether the given traceable element has been removed by every rewriter for a reason.
-
getRemovalReasons
java.util.stream.Stream<IDerivativeModificationReason> getRemovalReasons(PTraceable traceable)
Returns the reasons for which the traceable element has been removed by the rewriters.- Returns:
- the reasons of removal during rewriting
- Since:
- 2.0
-
-