Class PaginationResult<T extends BaseEntity>

    • Constructor Detail

    • Method Detail

      • getNumberOfPages

        public int getNumberOfPages()
        Gets the amount of pages created to split up a query.
        Returns:
        The number of pages created for the result.
      • getPage

        public List<T> getPage​(int number)
        Retrieves a specific page represented by a List. Only then will a query to the database be executed.
        Parameters:
        number - The number of the page. The first page has the number 1.
        Returns:
        A List of entities on this page.
      • getPageAsync

        public CompletableFuture<Void> getPageAsync​(int number,
                                                    Consumer<? super List<T>> callback)
        The asynchronous version of the getPage(int) method.
        Parameters:
        number - The number of the page. The first page has the number 1.
        callback - The callback to be executed once the page has been fetched.
        Returns:
        A CompletableFuture representing the asynchronous operation.
        See Also:
        getPage(int)
      • getPageAsStream

        public Stream<T> getPageAsStream​(int number)
        Retrieves a specific page represented by a Stream. Only then will a query to the database be executed.
        Parameters:
        number - The number of the page. The first page has the number 1.
        Returns:
        A Stream of entities on this page.
      • getPageAsArray

        public T[] getPageAsArray​(int number)
        Retrieves a specific page represented by an array. Only then will a query to the database be executed.
        Parameters:
        number - The number of the page. The first page has the number 1.
        Returns:
        An array of entities on this page.
      • getPageAsArrayAsync

        public CompletableFuture<Void> getPageAsArrayAsync​(int number,
                                                           Consumer<? super T[]> callback)
        The asynchronous version of the getPageAsArray(int) method.
        Parameters:
        number - The number of the page. The first page has the number 1.
        callback - The callback to be executed once the page has been fetched.
        Returns:
        A CompletableFuture representing the asynchronous operation.
        See Also:
        getPageAsArray(int)
      • orderBy

        @SafeVarargs
        public final PaginationResult<T> orderBy​(com.github.collinalpert.lambda2sql.functions.SqlFunction<T,​?>... orderFunctions)
        Adds ascending ORDER BY statements to the queries executed for the pages in a coalescing manner. Note that this will order the entire pagination structure and not every page separately.
        Parameters:
        orderFunctions - The columns to order by.
        Returns:
        The object with an ORDER BY statement
      • orderBy

        @SafeVarargs
        public final PaginationResult<T> orderBy​(OrderTypes orderType,
                                                 com.github.collinalpert.lambda2sql.functions.SqlFunction<T,​?>... orderFunctions)
        Adds ORDER BY statements to the queries executed for the pages in a coalescing manner. Note that this will order the entire pagination structure and not every page separately.
        Parameters:
        orderType - The direction of order.
        orderFunctions - The columns to order by.
        Returns:
        The object with an ORDER BY statement