static List < DeepTokenRange > mergeTokenRanges ( Map < String , Iterable < Comparable > > tokens , final Session session , final IPartitioner p ) { final Iterable < Comparable > allRanges = Ordering . natural ( ) . sortedCopy ( concat ( tokens . values ( ) ) ) ; final Comparable maxValue = Ordering . natural ( ) . max ( allRanges ) ; final Comparable minValue = ( Comparable ) p . minValue ( maxValue . getClass ( ) ) . getToken ( ) . token ; Function < Comparable , Set < DeepTokenRange > > map = new MergeTokenRangesFunction ( maxValue , minValue , session , p , allRanges ) ; Iterable < DeepTokenRange > concatenated = concat ( transform ( allRanges , map ) ) ; Set < DeepTokenRange > dedup = Sets . newHashSet ( concatenated ) ; return Ordering . natural ( ) . sortedCopy ( dedup ) ; }
Merges the list of tokens for each cluster machine to a single list of token ranges .