Interface TraversalStrategy.OptimizationStrategy
- All Superinterfaces:
Comparable<Class<? extends TraversalStrategy>>,Serializable,TraversalStrategy<TraversalStrategy.OptimizationStrategy>
- All Known Implementing Classes:
AdjacentToIncidentStrategy,ByModulatorOptimizationStrategy,CountStrategy,EarlyLimitStrategy,FilterRankingStrategy,GraphFilterStrategy,GValueReductionStrategy,IdentityRemovalStrategy,IncidentToAdjacentStrategy,InlineFilterStrategy,LazyBarrierStrategy,MatchPredicateStrategy,MessagePassingReductionStrategy,OrderLimitStrategy,PathProcessorStrategy,PathRetractionStrategy,ProductiveByStrategy,RepeatUnrollStrategy
- Enclosing interface:
- TraversalStrategy<S extends TraversalStrategy>
public static interface TraversalStrategy.OptimizationStrategy
extends TraversalStrategy<TraversalStrategy.OptimizationStrategy>
Implemented by strategies that rewrite the traversal to be more efficient, but with the same semantics
(e.g.
CountStrategy). During a re-write ONLY TinkerPop steps should be used.
For strategies that utilize provider specific steps, use TraversalStrategy.ProviderOptimizationStrategy.-
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 -
Method Summary
Modifier and TypeMethodDescriptiondefault Set<Class<? extends TraversalStrategy.OptimizationStrategy>>TheGValueReductionStrategyshould be the last TinkerPop optimnization strategy applied.default intcompareTo(Class<? extends TraversalStrategy> otherTraversalCategory) The type of traversal strategy -- i.e.Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.TraversalStrategy
apply, applyPrior, getConfiguration
-
Method Details
-
getTraversalCategory
Description copied from interface:TraversalStrategyThe type of traversal strategy -- i.e.TraversalStrategy.DecorationStrategy,TraversalStrategy.OptimizationStrategy,TraversalStrategy.FinalizationStrategy, orTraversalStrategy.VerificationStrategy.- Specified by:
getTraversalCategoryin interfaceTraversalStrategy<TraversalStrategy.OptimizationStrategy>- Returns:
- the traversal strategy category class
-
compareTo
- Specified by:
compareToin interfaceComparable<Class<? extends TraversalStrategy>>- Specified by:
compareToin interfaceTraversalStrategy<TraversalStrategy.OptimizationStrategy>
-
applyPost
TheGValueReductionStrategyshould be the last TinkerPop optimnization strategy applied. Adding it here ensures will help to enforce that more globally. Implementations overriding this method should have a good reason to ignore this.- Specified by:
applyPostin interfaceTraversalStrategy<TraversalStrategy.OptimizationStrategy>- Returns:
- the set of strategies that must be executed post this one
-