2222import com .spectralogic .ds3client .models .common .Range ;
2323import com .spectralogic .ds3client .utils .Guard ;
2424
25- import java .util .ArrayList ;
26- import java .util .List ;
27-
2825final class RangeHelper {
2926 private RangeHelper () {}
3027
@@ -40,7 +37,7 @@ static ImmutableCollection<Range> replaceRange(final ImmutableCollection<Range>
4037 return ImmutableList .of (Range .byLength (numBytesTransferred , intendedNumBytesToTransfer - numBytesTransferred ));
4138 }
4239
43- final List <Range > newRanges = new ArrayList <> ();
40+ final ImmutableList . Builder <Range > newRangesbuilder = ImmutableList . builder ();
4441
4542 final UnmodifiableIterator <Range > existingRangesIterator = existingRanges .iterator ();
4643
@@ -52,22 +49,22 @@ static ImmutableCollection<Range> replaceRange(final ImmutableCollection<Range>
5249
5350 if (numBytesTransferred < currentAccumulatedBytesInRanges ) {
5451 final Range firstNewRange = Range .byPosition (existingRange .getStart () - previousAccumulatedBytesInRanges + numBytesTransferred , existingRange .getEnd ());
55- newRanges .add (firstNewRange );
52+ newRangesbuilder .add (firstNewRange );
5653
57- addRemainingRanges (existingRangesIterator , newRanges );
54+ addRemainingRanges (existingRangesIterator , newRangesbuilder );
5855 break ;
5956 }
6057
6158 previousAccumulatedBytesInRanges += existingRange .getLength ();
6259 currentAccumulatedBytesInRanges += existingRange .getLength ();
6360 }
6461
65- return ImmutableList . copyOf ( newRanges );
62+ return newRangesbuilder . build ( );
6663 }
6764
68- static void addRemainingRanges (final UnmodifiableIterator <Range > existingRangesIterator , final List <Range > newRanges ) {
65+ static void addRemainingRanges (final UnmodifiableIterator <Range > existingRangesIterator , final ImmutableList . Builder <Range > newRangesbuilder ) {
6966 while (existingRangesIterator .hasNext ()) {
70- newRanges .add (existingRangesIterator .next ());
67+ newRangesbuilder .add (existingRangesIterator .next ());
7168 }
7269 }
7370
0 commit comments