Class PageableQueryBuilder

java.lang.Object
io.stargate.sdk.doc.domain.PageableQueryBuilder

public class PageableQueryBuilder extends Object
Builder for the pageable query.
Author:
Cedrick LUNVEN (@clunven)
  • Field Details

    • fields

      protected Set<String> fields
      Fields to search.
    • whereClause

      protected String whereClause
      One can provide the full where clause as a JSON String. If not null it will be used and the filters will be ignored.
    • filters

      protected List<Filter> filters
      Use to build the where Clause as a JsonString if the field whereClause is not provided. - FieldName + condition + value
    • pageSize

      protected int pageSize
      Page size.
    • pageState

      protected String pageState
      Page state.
  • Constructor Details

    • PageableQueryBuilder

      public PageableQueryBuilder()
      Default constructor.
  • Method Details

    • pageSize

      public PageableQueryBuilder pageSize(int pageSize)
      Enable paging.
      Parameters:
      pageSize - page size
      Returns:
      self reference
    • pageState

      public PageableQueryBuilder pageState(String pageState)
      withPageState
      Parameters:
      pageState - String
      Returns:
      DocumentPageQueryBuilder
    • select

      public PageableQueryBuilder select(String... fields)
      Only return those fields if provided
      Parameters:
      fields - String
      Returns:
      SearchDocumentQueryBuilder
    • selectAll

      public PageableQueryBuilder selectAll()
      Keep fields null but convenient for fluent api.
      Returns:
      current query
    • jsonWhere

      public PageableQueryBuilder jsonWhere(String where)
      Use 'where' to help you create
      Parameters:
      where - String
      Returns:
      SearchDocumentQueryBuilder
    • where

      public PageableQueryBuilderFilter where(String fieldName)
      Only return those fields if provided
      Parameters:
      fieldName - String
      Returns:
      SearchDocumentWhere
    • and

      public PageableQueryBuilderFilter and(String fieldName)
      Only return those fields if provided
      Parameters:
      fieldName - String
      Returns:
      SearchDocumentWhere
    • getWhereClause

      public String getWhereClause()
      Build Where Clause based on Filters.
      Returns:
      String
    • build

      public PageableQuery build()
      Terminal call to build immutable instance of PageableQuery.
      Returns:
      immutable instance of PageableQuery.
    • getPageSize

      public int getPageSize()
      Getter accessor for attribute 'pageSize'.
      Returns:
      current value of 'pageSize'
    • getPageState

      public String getPageState()
      Getter accessor for attribute 'pageState'.
      Returns:
      current value of 'pageState'