Class SamplePage

java.lang.Object
com.codename1.health.SamplePage

public final class SamplePage extends Object

One page of samples, plus the token needed to fetch the next.

String token = null;
do {
    SamplePage page = store.readSamplePage(query.setPageToken(token)).get();
    process(page.getSamples());
    token = page.getNextPageToken();
} while (token != null);
  • Constructor Details

    • SamplePage

      public SamplePage(List<HealthSample> samples, String nextPageToken, boolean truncated)
      Creates a page. The sample list is copied defensively.
  • Method Details

    • getSamples

      public List<HealthSample> getSamples()
      The samples in this page, never null.
    • getNextPageToken

      public String getNextPageToken()
      The token that fetches the following page, or null when this is the last one. Pass it to SampleQuery.setPageToken(String).
    • isTruncated

      public boolean isTruncated()

      true when the query's limit cut the result short and more data matched than was returned.

      Not a paging instruction. Page on getNextPageToken() and nothing else. Truncated with a null token is the store saying the rest is unreachable through this query -- Health Connect resumes per record type, so a page merged from several types has no token that could return what the merge dropped. Looping on this flag instead re-issues the same first page forever. Narrow the range, raise the limit, or query one type at a time.

      A page can also be the last one and still be truncated, which means the store stopped early rather than running out of data -- worth surfacing rather than quietly showing a partial total.

    • size

      public int size()
      How many samples this page holds.
    • isEmpty

      public boolean isEmpty()
      true when this page holds no samples.
    • toString

      public String toString()
      Description copied from class: Object
      Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method. The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of: getClass().getName() + '@' + Integer.toHexString(hashCode())
      Overrides:
      toString in class Object