Class ProviderGValueReductionStrategy
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy<TraversalStrategy.ProviderOptimizationStrategy>
-
- org.apache.tinkerpop.gremlin.process.traversal.strategy.provider.ProviderGValueReductionStrategy
-
- All Implemented Interfaces:
Serializable,Comparable<Class<? extends TraversalStrategy>>,TraversalStrategy<TraversalStrategy.ProviderOptimizationStrategy>,TraversalStrategy.ProviderOptimizationStrategy
public class ProviderGValueReductionStrategy extends AbstractTraversalStrategy<TraversalStrategy.ProviderOptimizationStrategy> implements TraversalStrategy.ProviderOptimizationStrategy
Converts placeholder steps that holdGValueobjects to their concrete implementations. While not an optimization in and of itself, theGValuefunctionality in general, provides a mechanism for traversal optimization so falls in this category. In addition, converting to concrete steps at this stage also allows provider optimization strategies to execute on concrete steps, rather than step interfaces. Concrete steps are much easier to reason about and keep strategy application simple for the vast majority of providers. Providers hoping to do more advanced optimizations that requireGValueobjects to be present for their strategies will need to removeProviderGValueReductionStrategyand offer their own mechanism for converting step placeholders to concrete steps.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy
TraversalStrategy.DecorationStrategy, TraversalStrategy.FinalizationStrategy, TraversalStrategy.OptimizationStrategy, TraversalStrategy.ProviderOptimizationStrategy, TraversalStrategy.VerificationStrategy
-
-
Constructor Summary
Constructors Constructor Description ProviderGValueReductionStrategy()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapply(Traversal.Admin<?,?> traversal)The transformation the strategy applies to the traversal.static ProviderGValueReductionStrategyinstance()-
Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.strategy.AbstractTraversalStrategy
equals, hashCode, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy
applyPost, applyPrior, getConfiguration
-
Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy.ProviderOptimizationStrategy
compareTo, getTraversalCategory
-
-
-
-
Method Detail
-
apply
public void apply(Traversal.Admin<?,?> traversal)
Description copied from interface:TraversalStrategyThe transformation the strategy applies to the traversal.- Specified by:
applyin interfaceTraversalStrategy<TraversalStrategy.ProviderOptimizationStrategy>
-
instance
public static ProviderGValueReductionStrategy instance()
-
-