package com.amazonaws.tvm.identity.admin; import java.util.ArrayList; import java.util.List; import java.util.Map; import com.amazonaws.services.dynamodbv2.model.AttributeValue; import com.amazonaws.services.dynamodbv2.model.ScanRequest; import com.amazonaws.services.dynamodbv2.model.ScanResult; public class ListUsers extends BaseAdmin { public static void main(String[] args) { String awsAccessKeyID = System.getProperty(AWSAccessKeyID); String awsSecretKey = System.getProperty(AWSSecretKey); String userTable = System.getProperty("UserTable"); if (awsAccessKeyID == null || awsSecretKey == null || userTable == null) { System.err .println("Usage:java CountUsers -DAWS_ACCESS_KEY_ID=<access_key> -DAWS_SECRET_KEY=<secret_key> -DUserTable=<table_name>"); return; } ListUsers obj = new ListUsers(awsAccessKeyID, awsSecretKey); if (!obj.doesTableExist(userTable)) { System.err.println("Invalid user table : " + userTable); return; } for (String username : obj.listUsers(userTable)) { System.out.println(username); } } public ListUsers(String awsAccessKeyID, String awsSecretKey) { super(awsAccessKeyID, awsSecretKey); } /** * Returns the list of usernames stored in the user table. */ public List<String> listUsers(String userTable) { List<String> users = new ArrayList<String>(1000); ScanResult result = ddb.scan(new ScanRequest().withTableName(userTable).withLimit(1000)); for (Map<String, AttributeValue> item : result.getItems()) { users.add(item.get("username").getS()); } return users; } }