Cursor (Google App Engine API for Java)

com.google.appengine.api.datastore

Class Cursor

  • java.lang.Object
    • com.google.appengine.api.datastore.Cursor
  • All Implemented Interfaces:
    java.io.Serializable


    public final class Cursor
    extends java.lang.Object
    implements java.io.Serializable
    A cursor that represents a position in a query.

    To resume a Query at the position defined by a Cursor, the Cursor must be present in the FetchOptions passed to a PreparedQuery identical to the one it was created from.

    Cursors can be retrieved from PreparedQuery.asQueryResult* functions. A typical use case would be:

     Cursor originalCursor = preparedQuery.asQueryResultList(withLimit(20)).getCursor();
     String encodedCursor = original.toWebSafeString();
     
    The encoded cursor can then be passed safely in a get or post arg of a web request and on another request the next batch of results can be retrieved with:
    
     Cursor decodedCursor = Cursor.fromWebSafeString(encodedCursor);
     List<Entity> nextBatch = preparedQuery.asQueryResultList(withLimit(20).cursor(decoded));
     

    See Also:
    Serialized Form
    • Method Detail

      • reverse

        @Deprecated
        public Cursor reverse()
        Deprecated. It is no longer necessary to call reverse() on cursors.

        A cursor returned by a query may also be used in the query returned by Query.reverse().

        Returns:
        a cursor identical to this
      • toWebSafeString

        public java.lang.String toWebSafeString()
        Encodes the current cursor as a web safe string that can later be decoded by fromWebSafeString(String)
      • fromWebSafeString

        public static Cursor fromWebSafeString(java.lang.String encodedCursor)
        Decodes the given encoded cursor
        Parameters:
        encodedCursor -
        Returns:
        the decoded cursor
        Throws:
        java.lang.IllegalArgumentException - if the provided string is not a valid encoded cursor
      • equals

        public boolean equals(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object