类com.amazonaws.services.dynamodbv2.model.ListTablesRequest源码实例Demo

下面列出了怎么用com.amazonaws.services.dynamodbv2.model.ListTablesRequest的API类实例代码及写法,或者点击链接到github查看源代码。

static void listMyTables() {
    String lastEvaluatedTableName = null;
    do {

        ListTablesRequest listTablesRequest = new ListTablesRequest().withLimit(10)
            .withExclusiveStartTableName(lastEvaluatedTableName);

        ListTablesResult result = client.listTables(listTablesRequest);
        lastEvaluatedTableName = result.getLastEvaluatedTableName();

        for (String name : result.getTableNames()) {
            System.out.println(name);
        }

    } while (lastEvaluatedTableName != null);
}
 
static void listMyTables() {
    String lastEvaluatedTableName = null;
    do {
        
        ListTablesRequest listTablesRequest = new ListTablesRequest()
        .withLimit(10)
        .withExclusiveStartTableName(lastEvaluatedTableName);
        
        ListTablesResult result = client.listTables(listTablesRequest);
        lastEvaluatedTableName = result.getLastEvaluatedTableName();
        
        for (String name : result.getTableNames()) {
            System.out.println(name);
        }
        
    } while (lastEvaluatedTableName != null);
}
 
private List<String> listTablesInternal()
        throws TimeoutException
{
    List<String> tables = new ArrayList<>();
    String nextToken = null;
    do {
        ListTablesRequest ddbRequest = new ListTablesRequest()
                .withExclusiveStartTableName(nextToken);
        ListTablesResult result = invoker.invoke(() -> ddbClient.listTables(ddbRequest));
        tables.addAll(result.getTableNames());
        nextToken = result.getLastEvaluatedTableName();
    }
    while (nextToken != null);
    return tables;
}
 
ListTablesResult listTables(final ListTablesRequest request) throws BackendException {
    controlPlaneRateLimiter.acquire();
    final Timer.Context apiTimerContext = getTimerContext(listTablesApiName, null /*tableName*/);
    ListTablesResult result;
    try {
        result = client.listTables(request);
    } catch (final Exception e) {
        throw processDynamoDbApiException(e, LIST_TABLES, null /*tableName*/);
    } finally {
        apiTimerContext.stop();
    }
    return result;
}
 
源代码5 项目: cloudbreak   文件: AwsPlatformResourcesTest.java
@Test
public void noSqlTables() {
    when(awsClient.createDynamoDbClient(any(AwsCredentialView.class), anyString())).thenReturn(amazonDynamoDB);
    when(amazonDynamoDB.listTables(any(ListTablesRequest.class))).thenReturn(
            new ListTablesResult().withTableNames("a", "b").withLastEvaluatedTableName("b"),
            new ListTablesResult().withTableNames("c", "d")
    );

    CloudNoSqlTables cloudNoSqlTables = underTest.noSqlTables(new CloudCredential(), region("region"), null);
    assertThat(cloudNoSqlTables.getCloudNoSqlTables()).hasSameElementsAs(List.of(
            new CloudNoSqlTable("a"),
            new CloudNoSqlTable("b"),
            new CloudNoSqlTable("c"),
            new CloudNoSqlTable("d")));
}
 
源代码6 项目: pacbot   文件: InventoryUtil.java
/**
 * Fetch dynamo DB tables.
 *
 * @param temporaryCredentials the temporary credentials
 * @param skipRegions the skip regions
 * @param accountId the accountId
 * @param accountName the account name
 * @return the map
 */
public static Map<String,List<DynamoVH>> fetchDynamoDBTables(BasicSessionCredentials temporaryCredentials, String skipRegions,String accountId,String accountName){
	Map<String,List<DynamoVH>> dynamodbtables = new LinkedHashMap<>();

	String expPrefix = InventoryConstants.ERROR_PREFIX_CODE+accountId + "\",\"Message\": \"Exception in fetching info for resource in specific region\" ,\"type\": \"DynamoDB\" , \"region\":\"" ;
	for(Region region : RegionUtils.getRegions()){
		try{
			if(!skipRegions.contains(region.getName())){
				AmazonDynamoDB awsClient= AmazonDynamoDBClientBuilder.standard().
					 withCredentials(new AWSStaticCredentialsProvider(temporaryCredentials)).withRegion(region.getName()).build();
				String marker = null;
				List<String> tables = new ArrayList<>();
				ListTablesResult listTableResult;
				do{
					listTableResult = awsClient.listTables(new ListTablesRequest().withExclusiveStartTableName(marker));
					marker = listTableResult.getLastEvaluatedTableName();
					tables.addAll(listTableResult.getTableNames());
				}while(marker!=null);

				List<DynamoVH> dynamodbtablesTemp = new ArrayList<>();
				tables.parallelStream().forEach(tblName -> {
					TableDescription table = awsClient.describeTable(tblName).getTable();
					List<com.amazonaws.services.dynamodbv2.model.Tag> tags = awsClient.listTagsOfResource(new ListTagsOfResourceRequest().withResourceArn( table.getTableArn())).getTags();
					synchronized (dynamodbtablesTemp) {
						dynamodbtablesTemp.add(new DynamoVH(table,tags));
					}

				});
				if(!dynamodbtablesTemp.isEmpty() ){
					log.debug(InventoryConstants.ACCOUNT + accountId +" Type : DynamoDB "+region.getName() + " >> "+dynamodbtablesTemp.size());
					dynamodbtables.put(accountId+delimiter+accountName+delimiter+region.getName(), dynamodbtablesTemp);
				}

			}
		}catch(Exception e){
			if(region.isServiceSupported(AmazonDynamoDB.ENDPOINT_PREFIX)){
				log.warn(expPrefix+ region.getName()+InventoryConstants.ERROR_CAUSE +e.getMessage()+"\"}");
				ErrorManageUtil.uploadError(accountId,region.getName(),"dynamodb",e.getMessage());
			}
		}
	}
	return dynamodbtables;
}
 
源代码7 项目: podyn   文件: PostgresDynamoDB.java
@Override
public ListTablesResult listTables(ListTablesRequest listTablesRequest) {
	
	throw new UnsupportedOperationException();
}
 
源代码8 项目: aws-doc-sdk-examples   文件: ListTables.java
public static void main(String[] args)
{
    System.out.println("Your DynamoDB tables:\n");

    final AmazonDynamoDB ddb = AmazonDynamoDBClientBuilder.defaultClient();

    ListTablesRequest request;

    boolean more_tables = true;
    String last_name = null;

    while(more_tables) {
        try {
            if (last_name == null) {
            	request = new ListTablesRequest().withLimit(10);
            }
            else {
            	request = new ListTablesRequest()
            			.withLimit(10)
            			.withExclusiveStartTableName(last_name);
            }

            ListTablesResult table_list = ddb.listTables(request);
            List<String> table_names = table_list.getTableNames();

            if (table_names.size() > 0) {
                for (String cur_name : table_names) {
                    System.out.format("* %s\n", cur_name);
                }
            } else {
                System.out.println("No tables found!");
                System.exit(0);
            }

            last_name = table_list.getLastEvaluatedTableName();
            if (last_name == null) {
                more_tables = false;
            }

        } catch (AmazonServiceException e) {
            System.err.println(e.getErrorMessage());
            System.exit(1);
        }
    }
    System.out.println("\nDone!");
}
 
@Override
public boolean exists() throws BackendException {
    return client.getDelegate().listTables(new ListTablesRequest()) != null;
}
 
@Override
public ListTablesResult listTables(ListTablesRequest arg0)
        throws AmazonServiceException, AmazonClientException {
    throw new UnsupportedOperationException("Use the underlying client instance instead");
}
 
@Override
public ListTablesResult listTables(ListTablesRequest request) throws AmazonServiceException, AmazonClientException {
    return getBackend().listTables(request);
}
 
@Override
public ListTablesResult listTables(ListTablesRequest arg0)
        throws AmazonServiceException, AmazonClientException {
    throw new UnsupportedOperationException("Use the underlying client instance instead");
}
 
 类方法
 同包方法