in tsfile-viewer-web/src/main/java/org/apache/iotdb/ui/service/TsfileViewerService.java [210:237]
public Page<ChunkGroupInfo> getChunkGroupList(
String filePath, PageModel pageModel, String deviceLike) throws TsfileViewerException {
filePath = getFullPath(filePath);
TsFileAnalyserV13 parser = tsfileViewerContainer.getTsfileParser(filePath);
List<ChunkGroupInfo> list = parser.getChunkGroupInfoList();
if (!"".equals(deviceLike) && deviceLike != null) {
list =
list.stream()
.filter((item) -> item.getDeviceName().contains(deviceLike))
.collect(Collectors.toList());
}
double totalSize = list.size();
double pageNo = pageModel.getPageNo();
PageParam pageParam = new PageParam();
pageParam.setPageNo(pageModel.getPageNo());
pageParam.setPageSize(pageModel.getPageSize());
pageParam.setMaxPageNum((int) Math.ceil(totalSize / pageNo));
pageParam.setTotalCount(list.size());
int start = (pageModel.getPageNo() - 1) * pageModel.getPageSize();
int end = pageModel.getPageNo() * pageModel.getPageSize();
if (end > list.size()) {
end = list.size();
}
list = list.subList(start, end);
Page<ChunkGroupInfo> res = new Page(list, pageParam);
return res;
}