Interface Grouping<S,K,V>
-
- All Known Implementing Classes:
GroupSideEffectStep,GroupStep
public interface Grouping<S,K,V>An interface for common functionality ofGroupStepandGroupSideEffectStep.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Traversal.Admin<S,V>convertValueTraversal(Traversal.Admin<S,V> valueTraversal)default BarrierdetermineBarrierStep(Traversal.Admin<S,V> traversal)Determines the first non-localBarrierstep in the provided traversal.default Map<K,V>doFinalReduction(Map<K,Object> map, Traversal.Admin<S,V> valueTraversal)When there is aBarrierdetected bydetermineBarrierStep(Traversal.Admin)it is processed in full up to that point and then the remainder of the traversal that follows it is completed.Traversal.Admin<S,K>getKeyTraversal()Determines if the provided traversal is equal to the key traversal that theGroupinghas.Traversal.Admin<S,V>getValueTraversal()Determines if the provided traversal is equal to the value traversal that theGroupinghas.default booleanhasBarrierInValueTraversal()Checks if there is a non-localBarrierin the value traversal.voidresetBarrierFromValueTraversal()The first non-localBarrierstep ascertained by calls todetermineBarrierStep(Traversal.Admin)is cached for aGrouping.
-
-
-
Method Detail
-
getKeyTraversal
Traversal.Admin<S,K> getKeyTraversal()
Determines if the provided traversal is equal to the key traversal that theGroupinghas.
-
getValueTraversal
Traversal.Admin<S,V> getValueTraversal()
Determines if the provided traversal is equal to the value traversal that theGroupinghas.
-
hasBarrierInValueTraversal
default boolean hasBarrierInValueTraversal()
Checks if there is a non-localBarrierin the value traversal.
-
resetBarrierFromValueTraversal
void resetBarrierFromValueTraversal()
The first non-localBarrierstep ascertained by calls todetermineBarrierStep(Traversal.Admin)is cached for aGrouping. After strategy application it is important that the cache be reset to ensure that any modifications to the child traversal are accounted for.
-
determineBarrierStep
default Barrier determineBarrierStep(Traversal.Admin<S,V> traversal)
Determines the first non-localBarrierstep in the provided traversal. This method is used byGroupStepandGroupSideEffectStepto ultimately determine the reducing bi-operator.- Parameters:
traversal- The traversal to inspect.- Returns:
- The first non-local barrier step or
nullif no such step was found.
-
convertValueTraversal
default Traversal.Admin<S,V> convertValueTraversal(Traversal.Admin<S,V> valueTraversal)
-
-