List of usage examples for com.amazonaws.services.dynamodbv2.model QueryResult getCount
public Integer getCount()
The number of items in the response.
From source file:awslabs.lab22.Lab22.java
License:Open Source License
/** * Controls the flow of the lab code execution. */// w w w .j a va 2 s. c o m public static void main(String[] args) { try { // Create DynamoDB client and set the region to US East (Virginia) AmazonDynamoDBClient ddbClient = new AmazonDynamoDBClient( new ClasspathPropertiesFileCredentialsProvider()); ddbClient.setRegion(region); List<Account> accounts = new ArrayList<Account>(); accounts.add(new Account().withCompany("Amazon.com").withEmail("johndoe@amazon.com").withFirst("John") .withLast("Doe").withAge("33")); accounts.add(new Account().withCompany("Asperatus Tech").withEmail("janedoe@amazon.com") .withFirst("Jane").withLast("Doe").withAge("24")); accounts.add(new Account().withCompany("Amazon.com").withEmail("jimjohnson@amazon.com").withFirst("Jim") .withLast("Johnson")); // Verify that the table schema is as we expect, and correct any // problems we find. if (!confirmTableSchema(ddbClient, tableName)) { System.out.print("Deleting. "); optionalLabCode.deleteTable(ddbClient, tableName); System.out.print("Rebuilding. "); optionalLabCode.buildTable(ddbClient, tableName); System.out.println("Done."); } System.out.println("Adding items to table."); // Create the accounts for (Account account : accounts) { labCode.createAccountItem(ddbClient, tableName, account); System.out.println("Added item: " + account.getCompany() + "/" + account.getEmail()); } System.out.println("Requesting matches for Company == Amazon.com"); QueryResult queryResult = labCode.lookupByHashKey(ddbClient, tableName, "Amazon.com"); if (queryResult != null && queryResult.getCount() > 0) { // Record was found for (Map<String, AttributeValue> item : queryResult.getItems()) { System.out.println("Item Found-"); for (Entry<String, AttributeValue> attribute : item.entrySet()) { System.out.print(" " + attribute.getKey() + ":"); if (attribute.getKey().equals("Age")) { System.out.println(attribute.getValue().getN()); } else { System.out.println(attribute.getValue().getS()); } } } } else { System.out.println("No matches found."); } // Conditionally update a record System.out.print("Attempting update. "); labCode.updateIfMatch(ddbClient, tableName, "jimjohnson@amazon.com", "Amazon.com", "James", "Jim"); System.out.println("Done."); } catch (Exception ex) { LabUtility.dumpError(ex); } }
From source file:com.amazon.janusgraph.diskstorage.dynamodb.DynamoDbDelegate.java
License:Open Source License
public QueryResult query(final QueryRequest request, final int permitsToConsume) throws BackendException { setUserAgent(request);/* w w w. j ava 2 s .c o m*/ QueryResult result; timedReadThrottle(QUERY, request.getTableName(), permitsToConsume); final Timer.Context apiTimerContext = getTimerContext(QUERY, request.getTableName()); try { result = client.query(request); } catch (Exception e) { throw processDynamoDbApiException(e, QUERY, request.getTableName()); } finally { apiTimerContext.stop(); } meterConsumedCapacity(QUERY, result.getConsumedCapacity()); measureItemCount(QUERY, request.getTableName(), result.getCount()); return result; }
From source file:com.amazon.janusgraph.diskstorage.dynamodb.QueryWorker.java
License:Open Source License
@Override public QueryResultWrapper next() throws BackendException { final Query backoff = new ExponentialBackoff.Query(request, delegate, permitsToConsume); final QueryResult result = backoff.runWithBackoff(); final ConsumedCapacity consumedCapacity = result.getConsumedCapacity(); if (null != consumedCapacity) { permitsToConsume = Math.max((int) (consumedCapacity.getCapacityUnits() - 1.0), 1); totalCapacityUnits += consumedCapacity.getCapacityUnits(); }/* www .j ava2 s. c o m*/ if (result.getLastEvaluatedKey() != null && !result.getLastEvaluatedKey().isEmpty()) { request.setExclusiveStartKey(result.getLastEvaluatedKey()); } else { markComplete(); } // a update returned count returnedCount += result.getCount(); // b update scanned count scannedCount += result.getScannedCount(); // c add scanned finalItemList finalItemList.addAll(result.getItems()); return new QueryResultWrapper(titanKey, result); }
From source file:com.rapid7.diskstorage.dynamodb.DynamoDBDelegate.java
License:Open Source License
public QueryResult query(QueryRequest request, int permitsToConsume) throws BackendException { setUserAgent(request);/*from ww w .j a v a2s.com*/ QueryResult result; timedReadThrottle(QUERY, request.getTableName(), permitsToConsume); final Timer.Context apiTimerContext = getTimerContext(QUERY, request.getTableName()); try { result = client.query(request); } catch (Exception e) { throw processDynamoDBAPIException(e, QUERY, request.getTableName()); } finally { apiTimerContext.stop(); } meterConsumedCapacity(QUERY, result.getConsumedCapacity()); measureItemCount(QUERY, request.getTableName(), result.getCount()); return result; }
From source file:com.rapid7.diskstorage.dynamodb.QueryWorker.java
License:Open Source License
@Override public QueryResultWrapper next() throws BackendException { ExponentialBackoff.Query backoff = new ExponentialBackoff.Query(request, delegate, permitsToConsume); QueryResult result = backoff.runWithBackoff(); ConsumedCapacity consumedCapacity = result.getConsumedCapacity(); if (null != consumedCapacity) { permitsToConsume = Math.max((int) (consumedCapacity.getCapacityUnits() - 1.0), 1); totalCapacityUnits += consumedCapacity.getCapacityUnits(); }//from w w w . ja v a 2 s . c o m if (result.getLastEvaluatedKey() != null && !result.getLastEvaluatedKey().isEmpty()) { request.setExclusiveStartKey(result.getLastEvaluatedKey()); } else { markComplete(); } // a update returned count returnedCount += result.getCount(); // b update scanned count scannedCount += result.getScannedCount(); // c add scanned items items.addAll(result.getItems()); return new QueryResultWrapper(titanKey, result); }
From source file:org.iternine.jeppetto.dao.dynamodb.iterable.QueryIterable.java
License:Apache License
@Override protected Iterator<Map<String, AttributeValue>> fetchItems() { QueryResult currentQueryResult = getDynamoDB().query(queryRequest); Iterator<Map<String, AttributeValue>> iterator = currentQueryResult.getItems().iterator(); queryRequest.setExclusiveStartKey(currentQueryResult.getLastEvaluatedKey()); // Prepare for next query if (logger.isDebugEnabled()) { logger.debug(//from w w w . j a v a 2 s. co m "Queried {} using {}. Took {} read capacity units, retrieved {} items, more items {} available.", getEnhancer().getBaseClass().getSimpleName(), queryRequest, currentQueryResult.getConsumedCapacity(), currentQueryResult.getCount(), currentQueryResult.getLastEvaluatedKey() == null ? "are not" : "are"); } return iterator; }