Package com.amazonaws.services.dynamodb.model

Examples of com.amazonaws.services.dynamodb.model.BatchGetItemResult


        DeleteItemResult result = deleteItem(request);
        return AlternatorDBApiVersion2Mapper.MapV1DeleteItemResultToV2(result, v2Request.getTableName());
  }

  public synchronized BatchGetItemResult batchGetItem(BatchGetItemRequest request) {
    BatchGetItemResult batchGetItemResult = new BatchGetItemResult();
    Map<String, BatchResponse> response = new HashMap<String, BatchResponse>();
    for (String tableName : request.getRequestItems().keySet()) {
      BatchResponse batchResponse = new BatchResponse();
      List<Map<String, AttributeValue>> items = new ArrayList<Map<String, AttributeValue>>();
      KeysAndAttributes keysAndAttributes = request.getRequestItems().get(tableName);
      List<Key> itemKeys = keysAndAttributes.getKeys();
      List<String> attributeToGet = keysAndAttributes.getAttributesToGet();
      try {
        for (Key itemKey : itemKeys) {
          try {
                        String hashKeyValue = getKeyValue(itemKey.getHashKeyElement());
                        String rangeKeyValue = getKeyValue(itemKey.getRangeKeyElement());
            Map<String, AttributeValue> item = this.tables.get(tableName).getItem(hashKeyValue, rangeKeyValue);
            item = getItemWithAttributesToGet(item, attributeToGet);
            if (item != null)
              items.add(item);
          } catch (NullPointerException e) {
            System.err.println("Caught NullPointerException: " + e.getMessage());
          }
        }
      } catch (NullPointerException e) {
        System.err.println("Caught NullPointerException: " + e.getMessage());
      }
      batchResponse.setConsumedCapacityUnits(1.0);
      if (items.size() != 0) {
        batchResponse.setItems(items);
        response.put(tableName, batchResponse);
        batchGetItemResult.setResponses(response);
        batchGetItemResult.getResponses().put(tableName, batchResponse);
      }
    }
        batchGetItemResult.setUnprocessedKeys(new HashMap<String, KeysAndAttributes>());
    return batchGetItemResult;
  }
View Full Code Here


    return batchGetItemResult;
  }

  public com.amazonaws.services.dynamodbv2.model.BatchGetItemResult batchGetItemV2(com.amazonaws.services.dynamodbv2.model.BatchGetItemRequest v2Request) {
        BatchGetItemRequest request = AlternatorDBApiVersion2Mapper.MapV2BatchGetItemRequestToV1(v2Request, this.tables);
        BatchGetItemResult result = batchGetItem(request);
        final Set<String> requestedTables = v2Request.getRequestItems().keySet();
        return AlternatorDBApiVersion2Mapper.MapV1BatchGetItemResultToV2(result, this.tables, requestedTables);
  }
View Full Code Here

        // TODO: Multi table test failed. Need to be fixed.
        requestItems.put(tableName1, keysAndAttributes);
        requestItems.put(tableName2, keysAndAttributes1);

        batchGetItemRequest.withRequestItems(requestItems);
    BatchGetItemResult result  = getClient().batchGetItem(batchGetItemRequest);
        Assert.assertNotNull("UnprocessedKeys should be empty rather than null.", result.getUnprocessedKeys());
  }
View Full Code Here

        return resultSet;
    }

    private void processBatchGetRequest(Map<String, Class<?>> tableNameToClassMapper,
            Map<String, KeysAndAttributes> requestItems, Map<String, List<Object>> resultSet) {
        BatchGetItemResult batchGetItemResult = null;
        BatchGetItemRequest batchGetItemRequest = new BatchGetItemRequest();
        batchGetItemRequest.setRequestItems(requestItems);
        do {
            if (batchGetItemResult != null) {
                batchGetItemRequest.setRequestItems(batchGetItemResult.getUnprocessedKeys());
            }

            batchGetItemResult = db.batchGetItem(batchGetItemRequest);
            Map<String, BatchResponse> responses = batchGetItemResult.getResponses();
            for (String tableName : responses.keySet()) {
                BatchResponse batchResponse = responses.get(tableName);
                List<Object> objects = null;
                if (resultSet.get(tableName) != null) {
                    objects = resultSet.get(tableName);
                } else {
                    objects = new LinkedList<Object>();
                }
                List<Map<String, AttributeValue>> items = batchResponse.getItems();
                for (Map<String, AttributeValue> item : items) {

                    objects.add(marshallIntoObject(tableNameToClassMapper.get(tableName), item));
                }
                resultSet.put(tableName, objects);

            }
            // To see whether there are unprocessed keys.
        } while (batchGetItemResult.getUnprocessedKeys() != null && batchGetItemResult.getUnprocessedKeys().size() > 0);

    }
View Full Code Here

        return resultSet;
    }

    private void processBatchGetRequest(Map<String, Class<?>> tableNameToClassMapper,
            Map<String, KeysAndAttributes> requestItems, Map<String, List<Object>> resultSet) {
        BatchGetItemResult batchGetItemResult = null;
        BatchGetItemRequest batchGetItemRequest = new BatchGetItemRequest();
        batchGetItemRequest.setRequestItems(requestItems);
        do {
            if (batchGetItemResult != null) {
                batchGetItemRequest.setRequestItems(batchGetItemResult.getUnprocessedKeys());
            }

            batchGetItemResult = db.batchGetItem(batchGetItemRequest);
            Map<String, BatchResponse> responses = batchGetItemResult.getResponses();
            for (String tableName : responses.keySet()) {
                BatchResponse batchResponse = responses.get(tableName);
                List<Object> objects = null;
                if (resultSet.get(tableName) != null) {
                    objects = resultSet.get(tableName);
                } else {
                    objects = new LinkedList<Object>();
                }
                List<Map<String, AttributeValue>> items = batchResponse.getItems();
                for (Map<String, AttributeValue> item : items) {

                    objects.add(marshallIntoObject(tableNameToClassMapper.get(tableName), item));
                }
                resultSet.put(tableName, objects);

            }
            // To see whether there are unprocessed keys.
        } while (batchGetItemResult.getUnprocessedKeys() != null && batchGetItemResult.getUnprocessedKeys().size() > 0);

    }
View Full Code Here

        return resultSet;
    }

    private void processBatchGetRequest(Map<String, Class<?>> tableNameToClassMapper,
            Map<String, KeysAndAttributes> requestItems, Map<String, List<Object>> resultSet) {
        BatchGetItemResult batchGetItemResult = null;
        BatchGetItemRequest batchGetItemRequest = new BatchGetItemRequest();
        batchGetItemRequest.setRequestItems(requestItems);
        do {
            if (batchGetItemResult != null) {
                batchGetItemRequest.setRequestItems(batchGetItemResult.getUnprocessedKeys());
            }

            batchGetItemResult = db.batchGetItem(batchGetItemRequest);
            Map<String, BatchResponse> responses = batchGetItemResult.getResponses();
            for (String tableName : responses.keySet()) {
                BatchResponse batchResponse = responses.get(tableName);
                List<Object> objects = null;
                if (resultSet.get(tableName) != null) {
                    objects = resultSet.get(tableName);
                } else {
                    objects = new LinkedList<Object>();
                }
                List<Map<String, AttributeValue>> items = batchResponse.getItems();
                for (Map<String, AttributeValue> item : items) {

                    objects.add(marshallIntoObject(tableNameToClassMapper.get(tableName), item));
                }
                resultSet.put(tableName, objects);

            }
            // To see whether there are unprocessed keys.
        } while (batchGetItemResult.getUnprocessedKeys() != null && batchGetItemResult.getUnprocessedKeys().size() > 0);

    }
View Full Code Here

TOP

Related Classes of com.amazonaws.services.dynamodb.model.BatchGetItemResult

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.