com.hp.hpl.jena.sparql.algebra.optimize
Class TransformFilterPlacement

java.lang.Object
  extended by com.hp.hpl.jena.sparql.algebra.TransformCopy
      extended by com.hp.hpl.jena.sparql.algebra.optimize.TransformFilterPlacement
All Implemented Interfaces:
Transform

public class TransformFilterPlacement
extends TransformCopy

Rewrite an algebra expression to put filters as close to their bound variables.

Process BGP (whether triples or quads) is left as a separate step (but after this transform) because it can desirable to reorder the BGP before placing filters, or afterwards.


Field Summary
 
Fields inherited from class com.hp.hpl.jena.sparql.algebra.TransformCopy
COPY_ALWAYS, COPY_ONLY_ON_CHANGE
 
Constructor Summary
TransformFilterPlacement()
           
TransformFilterPlacement(boolean includeBGPs)
           
 
Method Summary
static com.hp.hpl.jena.sparql.algebra.optimize.TransformFilterPlacement.Placement debugPlaceBGP(ExprList exprsIn, BasicPattern pattern)
           
static Op transform(ExprList exprs, BasicPattern bgp)
          Apply filter placement to a BGP
static Op transform(ExprList exprs, Node graphNode, BasicPattern bgp)
          Apply filter placement to a named graph BGP
 Op transform(OpFilter opFilter, Op x)
           
 
Methods inherited from class com.hp.hpl.jena.sparql.algebra.TransformCopy
transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform, transform
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TransformFilterPlacement

public TransformFilterPlacement()

TransformFilterPlacement

public TransformFilterPlacement(boolean includeBGPs)
Method Detail

transform

public static Op transform(ExprList exprs,
                           BasicPattern bgp)
Apply filter placement to a BGP


transform

public static Op transform(ExprList exprs,
                           Node graphNode,
                           BasicPattern bgp)
Apply filter placement to a named graph BGP


transform

public Op transform(OpFilter opFilter,
                    Op x)
Specified by:
transform in interface Transform
Overrides:
transform in class TransformCopy

debugPlaceBGP

public static com.hp.hpl.jena.sparql.algebra.optimize.TransformFilterPlacement.Placement debugPlaceBGP(ExprList exprsIn,
                                                                                                       BasicPattern pattern)


Licenced under the Apache License, Version 2.0