Hello,
https://issues.apache.org/jira/browse/TINKERPOP3-593
Many TraversalStrategies fit into nice categories and these categories make
sense to be executed in order. The categories we find useful are:
1. Decoration: EventStrategy, PartitionStrategy -- in short, add
"application logic" to the traversal.
2. Optimization: IdentiityRemovalStrategy, RangeByIsCountStrategy -- in
short, rewrite the traversal to be more efficient, but with the same semantics.
3. Finalization: EngineDependentStrategy, ProfileStrategy -- in short,
do final behaviors that require a fully compiled traversal to work.
4. Verification: LambdaRestrictionStrategy, ReadOnlyStrategy -- in
short, no more behavioral tweaking of the traversal, all you can do is analyze
it an throw exceptions if the traversal is not correct for the execution
context.
If a vendor/user has a strategy that does not fit nicely into one of these
categories, they can still extend TraversalStrategy and do cross category
post/prior sorting. However, all the strategies in TP3 fit nicely into these
categories and best of all, we have removed so much post/prior declaration
because of it.
I've updated the docs accordingly.
http://tinkerpop.incubator.apache.org/docs/3.0.0-SNAPSHOT/#traversalstrategy
Enjoy,
Marko.
http://markorodriguez.com