R
- low level result typepublic abstract class TableCollection<R> extends PageBasedCollection<Table,R>
Table
's (initialized with the respective table
names).
An TableCollection
object maintains a cursor pointing to its
current pages of data. Initially the cursor is positioned before the first
page. The next method moves the cursor to the next row, and because it
returns false when there are no more rows in the TableCollection
object, it can be used in a while loop to iterate through the collection.
Network calls can be triggered when the collection is iterated across page
boundaries.Constructor and Description |
---|
TableCollection() |
Modifier and Type | Method and Description |
---|---|
R |
getLastLowLevelResult()
Returns the low-level result last retrieved (for the current page) from
the server side; or null if there has yet no calls to the server.
|
abstract Integer |
getMaxResultSize()
Returns the maximum number of resources to be retrieved in this
collection; or null if there is no limit.
|
PageIterable<Table,R> |
pages()
Returns an
Iterable<Page<Table, R>> that iterates over pages of
tables from this collection. |
LowLevelResultListener<R> |
registerLowLevelResultListener(LowLevelResultListener<R> listener)
Used to register a listener for the event of receiving a low-level result
from the server side.
|
firstPage, iterator
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
public PageIterable<Table,R> pages()
Iterable<Page<Table, R>>
that iterates over pages of
tables from this collection. Each call to Iterator.next
on an
Iterator
returned from this Iterable
results in exactly
one call to DynamoDB to retrieve a single page of results.
TableCollection<?> collection = ...;
for (Page<Table> page : collection.pages()) {
processTables(page);
}
The use of the internal/undocumented PageIterable
class instead
of Iterable
in the public interface here is retained for
backwards compatibility. It doesn't expose any methods beyond those
of the Iterable
interface. This method will be changed to return
an Iterable<Page<Table, R>>
directly in a future release of the
SDK.
pages
in class PageBasedCollection<Table,R>
Page
public abstract Integer getMaxResultSize()
getMaxResultSize
in class PageBasedCollection<Table,R>
public R getLastLowLevelResult()
getLastLowLevelResult
in class PageBasedCollection<Table,R>
public LowLevelResultListener<R> registerLowLevelResultListener(LowLevelResultListener<R> listener)
registerLowLevelResultListener
in class PageBasedCollection<Table,R>
listener
- listener to be registered. If null, a "none" listener will be
set.