Package org.onyx.api

Class BaseQueryBuilder<T extends BaseQueryBuilder<T>>

java.lang.Object
org.onyx.api.BaseQueryBuilder<T>
Type Parameters:
T - the QueryBuilder class that extends BaseQueryBuilder
Direct Known Subclasses:
Account.ListBuilder, Action.ListBuilder, Action.SumBuilder, Asset.ListBuilder, Feed.ListBuilder, Key.ListBuilder, Token.ListBuilder, Token.SumBuilder, Transaction.ListBuilder

public abstract class BaseQueryBuilder<T extends BaseQueryBuilder<T>> extends Object
Abstract base class providing an interface for building queries.
  • Field Details

    • next

      protected Query next
  • Constructor Details

    • BaseQueryBuilder

      public BaseQueryBuilder()
  • Method Details

    • getPage

      public abstract <S extends BasePage> S getPage(Client client) throws ChainException
      Execute the API query and return one page of items.
      Parameters:
      client - ledger API connection object
      Returns:
      a page of S objects that satisfy the query
      Throws:
      ChainException
    • getIterable

      public abstract <S extends BaseItemIterable> S getIterable(Client client) throws ChainException
      Executes the API query.
      Parameters:
      client - ledger API connection object
      Returns:
      an iterable over S objects that satisfy the query
      Throws:
      ChainException
    • setPageSize

      public T setPageSize(int size)
      Sets the number of actions to include in each page.
      Parameters:
      size - the number of items on the page
      Returns:
      updated builder
    • setFilter

      public T setFilter(String filter)
      Sets the filter expression for the query.
      Parameters:
      filter - a filter expression
      Returns:
      updated builder
    • addFilterParameter

      public T addFilterParameter(Object param)
      Adds a filter parameter that will be interpolated into the filter expression.
      Parameters:
      param - a filter parameter
      Returns:
      updated builder
    • setFilterParameters

      public T setFilterParameters(List<?> params)
      Specifies the parameters that will be interpolated into the filter expression.
      Parameters:
      params - list of filter parameters