Represents list of ranges of integers (ByteRange objects).
The name reflects the fact that in FTP extended mode restart markers, such
structure represent a list of ranges of transfered bytes.
The list has following characteristic:
no ranges from the list are adjacent nor have any common subset.
In other words, for any two list members, r1.merge(r2) always
returns ByteRange.THIS_ABOVE or ByteRange.THIS_BELOW
ranges in the list are ordered by the value of "from" field
(or "to" field; it's the same)
You cannot just add new ranges to the list, because that would violate
the contract above. New ranges can be merge()d to the list.
merge(ByteRange range)
Merge a copy of the given ByteRange into this list.
void
merge(ByteRangeList other)
Merge into this list all the ranges contained
in the given ByteRangeList using merge(ByteRange).
void
merge(java.util.Vector other)
Merge into this list all the ranges contained
in the given vector using merge(ByteRange).
java.lang.String
toFtpCmdArgument()
convert this object to a String, in the format
of argument of REST GridFTP command, for instance:
"0-29,32-89"
The resulting String will preserve the features
of ByteRangeList: (1) order and (2) separation
java.util.Vector
toVector()
convert this object to a vector of ByteRanges.
Merge a copy of the given ByteRange into this list.
The resulting range list will represent
all the integers represented so far, plus the integers represented
by the new range.
The resulting list will be stored in this object,
while the parameter object will remain intact.
For instance:
Merge into this list all the ranges contained
in the given ByteRangeList using merge(ByteRange).
The parameter object remains intact.
Parameters:
other - the ByteRangeList to be merged into this
toVector
public java.util.Vector toVector()
convert this object to a vector of ByteRanges.
The resulting vector will preserve the features
of ByteRangeList: (1) order and (2) separation
toFtpCmdArgument
public java.lang.String toFtpCmdArgument()
convert this object to a String, in the format
of argument of REST GridFTP command, for instance:
"0-29,32-89"
The resulting String will preserve the features
of ByteRangeList: (1) order and (2) separation