下面列出了java.util.concurrent.ConcurrentSkipListMap#size ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
* Gets the start {@link Offset} of the given instance of {@code indexSegments}.
* @param indexSegments the map of index segment start {@link Offset} to {@link IndexSegment} instances
*/
private Offset getStartOffset(ConcurrentSkipListMap<Offset, IndexSegment> indexSegments) {
Offset startOffset;
if (indexSegments.size() == 0) {
LogSegment firstLogSegment = log.getFirstSegment();
startOffset = new Offset(firstLogSegment.getName(), firstLogSegment.getStartOffset());
} else {
startOffset = indexSegments.firstKey();
}
return startOffset;
}
/**
* Gets the end {@link Offset} of the given instance of {@code indexSegments}.
* @param indexSegments the map of index segment start {@link Offset} to {@link IndexSegment} instances
*/
private Offset getCurrentEndOffset(ConcurrentSkipListMap<Offset, IndexSegment> indexSegments) {
// If no indexSegments exist, return start offset of first log segment
return indexSegments.size() == 0 ? getStartOffset(indexSegments)
: indexSegments.lastEntry().getValue().getEndOffset();
}