Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2011-2015 Amazon Technologies, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at:
  *
  *    http://aws.amazon.com/apache2.0
  *
 * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
 * OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and
 * limitations under the License.
 */
package com.amazonaws.services.dynamodbv2.datamodeling;
Implementation of the List interface that represents the results from a parallel scan in AWS DynamoDB. Paginated results are loaded on demand when the user executes an operation that requires them. Some operations, such as size(), must fetch the entire list, but results are lazily fetched page by page when possible.

This is an unmodifiable list, so callers should not invoke any operations that modify this list, otherwise they will throw an UnsupportedOperationException.

Parameters:
<T> The type of objects held in this list.
See also:
PaginatedList
public class PaginatedParallelScanList<T> extends PaginatedList<T> {

    
The current parallel scan task which contains all the information about the scan request
    private final ParallelScanTask parallelScanTask;
    private final DynamoDBMapperConfig config;
            DynamoDBMapper mapper,
            Class<T> clazz,
            AmazonDynamoDB dynamo,
            ParallelScanTask parallelScanTask,
            PaginationLoadingStrategy paginationLoadingStrategy,
            DynamoDBMapperConfig config) {
        super(mapperclazzdynamopaginationLoadingStrategy);
        this. = parallelScanTask;
        this. = config;
        // Marshal the first batch of results in allResults
        // If the results should be eagerly loaded at once
        if (paginationLoadingStrategy == .) {
            loadAllResults();
        }
    }
    @Override
    protected boolean atEndOfResults() {
        return .isAllSegmentScanFinished();
    }
    @Override
    protected List<T> fetchNextPage() {
    }
    private List<T> marshalParallelScanResultsIntoObjects(List<ScanResultscanResults) {
        List<T> allItems = new LinkedList<T>();
        for (ScanResult scanResult : scanResults) {
            if (null != scanResult) {
                allItems.addAll(.marshallIntoObjects(
                    .toParameters(
                        scanResult.getItems(),
                        ,
                        .getTableName(),
                        )));
            }
        }
        return allItems;
    }
New to GrepCode? Check out our FAQ X