@Override public TableCollection<ListTablesResult> listTables(String exclusiveStartTableName, int maxResultSize) { return doList(new ListTablesSpec() .withExclusiveStartTableName(exclusiveStartTableName) .withMaxResultSize(maxResultSize)); }
public ListTablesCollection(AmazonDynamoDB client, ListTablesSpec spec) { this.client = client; this.spec = spec; this.startKey = spec.getExclusiveStartTableName(); }
@Override public Integer getMaxResultSize() { return spec.getMaxResultSize(); } }
@Override public TableCollection<ListTablesResult> listTables(int maxResultSize) { return doList(new ListTablesSpec() .withMaxResultSize(maxResultSize)); }
@Override public TableCollection<ListTablesResult> listTables(String exclusiveStartTableName) { return doList(new ListTablesSpec() .withExclusiveStartTableName(exclusiveStartTableName)); }
@Override public Page<Table, ListTablesResult> firstPage() { ListTablesRequest request = spec.getRequest(); request.setExclusiveStartTableName(startKey); request.setLimit(InternalUtils.minimum( spec.getMaxResultSize(), spec.getMaxPageSize())); ListTablesResult result = client.listTables(request); setLastLowLevelResult(result); return new ListTablesPage(client, spec, request, 0, result); }
@Override public ListTablesSpec withMaxResultSize(Integer maxResultSize) { setMaxResultSize(maxResultSize); return this; }
@Override public ListTablesSpec withMaxPageSize(Integer maxPageSize) { setMaxPageSize(maxPageSize); return this; }
public ListTablesSpec withExclusiveStartTableName(String exclusiveStartTableName) { getRequest().setExclusiveStartTableName(exclusiveStartTableName); return this; }
private int nextRequestLimit(int max) { int nextIndex = index + this.size(); return InternalUtils.minimum( max - nextIndex, spec.getMaxPageSize()); }
@Override public ListTablesSpec withProgressListener(ProgressListener progressListener) { setProgressListener(progressListener); return this; }
@Override public ListTablesSpec withRequestMetricCollector( RequestMetricCollector requestMetricCollector) { setRequestMetricCollector(requestMetricCollector); return this; } }
@Override public TableCollection<ListTablesResult> listTables() { return doList(new ListTablesSpec()); }
@Override public Page<Table, ListTablesResult> firstPage() { ListTablesRequest request = spec.getRequest(); request.setExclusiveStartTableName(startKey); request.setLimit(InternalUtils.minimum( spec.getMaxResultSize(), spec.getMaxPageSize())); ListTablesResult result = client.listTables(request); setLastLowLevelResult(result); return new ListTablesPage(client, spec, request, 0, result); }
@Override public TableCollection<ListTablesResult> listTables(int maxResultSize) { return doList(new ListTablesSpec() .withMaxResultSize(maxResultSize)); }
@Override public TableCollection<ListTablesResult> listTables(String exclusiveStartTableName) { return doList(new ListTablesSpec() .withExclusiveStartTableName(exclusiveStartTableName)); }
@Override public ListTablesSpec withMaxResultSize(int maxResultSize) { setMaxResultSize(maxResultSize); return this; }
@Override public ListTablesSpec withMaxPageSize(int maxPageSize) { setMaxPageSize(maxPageSize); return this; }
public String getExclusiveStartTableName() { return getRequest().getExclusiveStartTableName(); }
private int nextRequestLimit(int max) { int nextIndex = index + this.size(); return InternalUtils.minimum( max - nextIndex, spec.getMaxPageSize()); }