package io.spring.application; import java.util.List; import lombok.Getter; @Getter public class CursorPager { private List data; private boolean next; private boolean previous; public CursorPager(List data, Direction direction, boolean hasExtra) { this.data = data; if (direction == Direction.NEXT) { this.previous = false; this.next = hasExtra; } else { this.next = false; this.previous = hasExtra; } } public boolean hasNext() { return next; } public boolean hasPrevious() { return previous; } public String getStartCursor() { return data.isEmpty() ? "" : data.get(0).getCursor(); } public String getEndCursor() { return data.isEmpty() ? "" : data.get(data.size() - 1).getCursor(); } public enum Direction { PREV, NEXT } }