Код: Выделить всё
@Data
public class PagedSchoolDto {
private final Integer count;
private final Map content;
private final String pagingState;
private final Boolean hasNext;
public PagedSchoolDto(final Slice slice) {
this.content = slice.getContent().stream().collect(
Collectors.groupingBy(School::getId, () -> new TreeMap(new UUIDComparator()), Collectors.toList()));
this.count = slice.getContent().size();
this.hasNext = slice.hasNext();
this.pagingState = getPagingState(slice);
}
@Nullable
private static String getPagingState(final Slice slice) {
if (slice.hasNext()) {
CassandraPageRequest pageRequest = (CassandraPageRequest) slice.nextPageable();
return pageRequest.getPagingState().toString();
} else {
return null;
}
}
}
Код: Выделить всё
@Data
public class PagedDto {
private final Integer count;
private final Map content;
private final String pagingState;
private final Boolean hasNext;
public PagedDto(final Slice slice) {
this.content = slice.getContent().stream().collect(
Collectors.groupingBy(::getId, () -> new TreeMap(new UUIDComparator()), Collectors.toList()));
this.count = slice.getContent().size();
this.hasNext = slice.hasNext();
this.pagingState = getPagingState(slice);
}
@Nullable
private static String getPagingState(final Slice slice) {
if (slice.hasNext()) {
CassandraPageRequest pageRequest = (CassandraPageRequest) slice.nextPageable();
return pageRequest.getPagingState().toString();
} else {
return null;
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/692 ... h-generics
Мобильная версия