|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.amazonaws.services.dynamodbv2.datamodeling.PaginatedList<T>
T
- The domain object type stored in this list.public abstract class PaginatedList<T>
Unmodifiable list supporting paginated result sets from Amazon DynamoDB.
Pages of results are fetched lazily from DynamoDB as they are needed. Some
methods, such as size()
and
toArray()
, require fetching the entire result set
eagerly. See the javadoc of individual methods for details on which are lazy.
Field Summary | |
---|---|
protected List<T> |
allResults
All currently loaded results for this list. |
protected boolean |
allResultsLoaded
Tracks if all results have been loaded yet or not |
protected Class<T> |
clazz
The class annotated with DynamoDB tags declaring how to load/store objects into DynamoDB |
protected AmazonDynamoDB |
dynamo
The client for working with DynamoDB |
protected DynamoDBMapper |
mapper
Reference to the DynamoDB mapper for marshalling DynamoDB attributes back into objects |
protected List<T> |
nextResults
Lazily loaded next results waiting to be added into allResults |
Constructor Summary | |
---|---|
PaginatedList(DynamoDBMapper mapper,
Class<T> clazz,
AmazonDynamoDB dynamo)
Constructs a PaginatedList instance using the default PaginationLoadingStrategy |
|
PaginatedList(DynamoDBMapper mapper,
Class<T> clazz,
AmazonDynamoDB dynamo,
DynamoDBMapperConfig.PaginationLoadingStrategy paginationLoadingStrategy)
Constructs a PaginatedList instance. |
Method Summary | ||
---|---|---|
void |
add(int arg0,
T arg1)
|
|
boolean |
add(T arg0)
|
|
boolean |
addAll(Collection<? extends T> arg0)
|
|
boolean |
addAll(int arg0,
Collection<? extends T> arg1)
|
|
protected abstract boolean |
atEndOfResults()
Returns whether we have reached the end of the result set. |
|
void |
clear()
|
|
boolean |
contains(Object arg0)
Returns whether the collection contains the given element. |
|
boolean |
containsAll(Collection<?> arg0)
|
|
protected abstract List<T> |
fetchNextPage()
Fetches the next page of results (which may be empty) and returns any items found. |
|
T |
get(int n)
Returns the Nth element of the list. |
|
int |
indexOf(Object arg0)
Returns the first index of the object given in the list. |
|
boolean |
isEmpty()
Returns whether the collection is empty. |
|
Iterator<T> |
iterator()
Returns an iterator over this list that lazily initializes results as necessary. |
|
int |
lastIndexOf(Object arg0)
|
|
ListIterator<T> |
listIterator()
|
|
ListIterator<T> |
listIterator(int arg0)
|
|
void |
loadAllResults()
Eagerly loads all results for this list. |
|
T |
remove(int arg0)
|
|
boolean |
remove(Object arg0)
|
|
boolean |
removeAll(Collection<?> arg0)
|
|
boolean |
retainAll(Collection<?> arg0)
|
|
T |
set(int arg0,
T arg1)
|
|
int |
size()
|
|
List<T> |
subList(int arg0,
int arg1)
Returns a sub-list in the range specified, loading more results as necessary. |
|
Object[] |
toArray()
|
|
|
toArray(X[] a)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.List |
---|
equals, hashCode |
Field Detail |
---|
protected final DynamoDBMapper mapper
protected final Class<T> clazz
protected final AmazonDynamoDB dynamo
protected boolean allResultsLoaded
protected final List<T> allResults
protected final List<T> nextResults
Constructor Detail |
---|
public PaginatedList(DynamoDBMapper mapper, Class<T> clazz, AmazonDynamoDB dynamo)
public PaginatedList(DynamoDBMapper mapper, Class<T> clazz, AmazonDynamoDB dynamo, DynamoDBMapperConfig.PaginationLoadingStrategy paginationLoadingStrategy)
mapper
- The mapper for marshalling DynamoDB attributes into objects.clazz
- The class of the annotated model.dynamo
- The DynamoDB client for making low-level request calls.paginationLoadingStrategy
- The strategy used for loading paginated results. Caller has to
explicitly set this parameter, since the DynamoDBMapperConfig
set in the mapper is not accessible here. If null value is
provided, LAZY_LOADING will be set by default.Method Detail |
---|
public void loadAllResults()
Not supported in ITERATION_ONLY mode.
protected abstract List<T> fetchNextPage()
protected abstract boolean atEndOfResults()
public Iterator<T> iterator()
If it configured with ITERARTION_ONLY mode, then the iterator could be only retrieved once, and any previously loaded results will be cleared in the memory during the iteration.
iterator
in interface Iterable<T>
iterator
in interface Collection<T>
iterator
in interface List<T>
public boolean isEmpty()
Not supported in ITERATION_ONLY mode.
isEmpty
in interface Collection<T>
isEmpty
in interface List<T>
public T get(int n)
Not supported in ITERATION_ONLY mode.
get
in interface List<T>
public boolean contains(Object arg0)
Not supported in ITERATION_ONLY mode.
contains
in interface Collection<T>
contains
in interface List<T>
public List<T> subList(int arg0, int arg1)
Not supported in ITERATION_ONLY mode.
subList
in interface List<T>
public int indexOf(Object arg0)
Not supported in ITERATION_ONLY mode.
indexOf
in interface List<T>
public int size()
size
in interface Collection<T>
size
in interface List<T>
public boolean containsAll(Collection<?> arg0)
containsAll
in interface Collection<T>
containsAll
in interface List<T>
public int lastIndexOf(Object arg0)
lastIndexOf
in interface List<T>
public Object[] toArray()
toArray
in interface Collection<T>
toArray
in interface List<T>
public <X> X[] toArray(X[] a)
toArray
in interface Collection<T>
toArray
in interface List<T>
public ListIterator<T> listIterator()
listIterator
in interface List<T>
public ListIterator<T> listIterator(int arg0)
listIterator
in interface List<T>
public boolean remove(Object arg0)
remove
in interface Collection<T>
remove
in interface List<T>
public T remove(int arg0)
remove
in interface List<T>
public boolean removeAll(Collection<?> arg0)
removeAll
in interface Collection<T>
removeAll
in interface List<T>
public boolean retainAll(Collection<?> arg0)
retainAll
in interface Collection<T>
retainAll
in interface List<T>
public T set(int arg0, T arg1)
set
in interface List<T>
public boolean add(T arg0)
add
in interface Collection<T>
add
in interface List<T>
public void add(int arg0, T arg1)
add
in interface List<T>
public boolean addAll(Collection<? extends T> arg0)
addAll
in interface Collection<T>
addAll
in interface List<T>
public boolean addAll(int arg0, Collection<? extends T> arg1)
addAll
in interface List<T>
public void clear()
clear
in interface Collection<T>
clear
in interface List<T>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |