@Override public GetItemResult getItem(String tableName, java.util.Map<String, AttributeValue> key) { return getItem(new GetItemRequest().withTableName(tableName).withKey(key)); }
@Override public Status read(String table, String key, Set<String> fields, Map<String, ByteIterator> result) { if (LOGGER.isDebugEnabled()) { LOGGER.debug("readkey: " + key + " from table: " + table); } GetItemRequest req = new GetItemRequest(table, createPrimaryKey(key)); req.setAttributesToGet(fields); req.setConsistentRead(consistentRead); GetItemResult res; try { res = dynamoDB.getItem(req); } catch (AmazonServiceException ex) { LOGGER.error(ex); return Status.ERROR; } catch (AmazonClientException ex) { LOGGER.error(ex); return CLIENT_ERROR; } if (null != res.getItem()) { result.putAll(extractResult(res.getItem())); if (LOGGER.isDebugEnabled()) { LOGGER.debug("Result: " + res.toString()); } } return Status.OK; }
@Override public GetItemResult getItem(String tableName, java.util.Map<String, AttributeValue> key, Boolean consistentRead) { return getItem(new GetItemRequest().withTableName(tableName).withKey(key).withConsistentRead(consistentRead)); }
gres = dynamoDB.getItem(greq); } catch (AmazonServiceException ex) { LOGGER.error(ex);
@Override public CompletableFuture<User> getUser(RequestContext context, Object userId) { return CompletableFuture.supplyAsync(() -> { GetItemResult item = dynamoDBClient.getItem("users", ImmutableMap.of( "project", new AttributeValue(context.project), "id", new AttributeValue(userId.toString()) )); Map<String, AttributeValue> attrs = item.getItem().get("properties").getM(); ObjectNode obj = JsonHelper.jsonObject(); for (Entry<String, AttributeValue> entry : attrs.entrySet()) { obj.set(entry.getKey(), getJsonValue(entry.getValue())); } return new User(userId, null, obj); }); }
@Override public <T> T getConfig(String project, String configName, Class<T> clazz) { Map<String, AttributeValue> item = dynamoDBClient.getItem(new GetItemRequest() .withTableName(tableConfig.getTableName()) .withKey(new SimpleImmutableEntry<>("project", new AttributeValue(project)), new SimpleImmutableEntry<>("id", new AttributeValue(configName))) .withAttributesToGet("value") .withConsistentRead(true)).getItem(); if (item == null) { return null; } String value = item.get("value").getS(); return value == null ? null : JsonHelper.read(value, clazz); }
getItemRequest.setTableName(tableName); getItemRequest.setKey(key); return getItem(getItemRequest);
@Override public MaterializedView getMaterializedView(String project, String tableName) { Map<String, AttributeValue> item = dynamoDBClient.getItem(new GetItemRequest().withTableName(tableConfig.getTableName()) .withAttributesToGet("value") .withKey(of( "project", new AttributeValue(project), "type_table_name", new AttributeValue("materialized_" + tableName)))).getItem(); if (item == null) { throw new NotExistsException("Materialized view"); } return JsonHelper.read(item.get("value").getS(), MaterializedView.class); }
getItemRequest.setKey(key); getItemRequest.setConsistentRead(consistentRead); return getItem(getItemRequest);
@Override public List<DColumn> getColumns(String storeName, String rowKey, Collection<String> columnNames) { String tableName = storeToTableName(storeName); Map<String, AttributeValue> attributeMap = m_ddbClient.getItem(tableName, makeDDBKey(rowKey)).getItem(); List<DColumn> colList = loadAttributes(attributeMap, colName -> (columnNames == null || columnNames.contains(colName)) ); m_logger.debug("getColumns({}, {}, {} names) returning {} columns", new Object[]{tableName, rowKey, columnNames.size(), colList.size()}); return colList; }
private static void getItem(String keyVal) { Map<String, AttributeValue> key = new HashMap<String, AttributeValue>(); key.put("name", new AttributeValue(keyVal)); GetItemRequest getItemRequest = new GetItemRequest().withTableName(TABLENAME).withKey(key); GetItemResult item = dynamoDBClient.getItem(getItemRequest); logger.info("Get Result: " + item); }
@Override public List<DColumn> getColumns(String storeName, String rowKey, String startColumn, String endColumn, int count) { String tableName = storeToTableName(storeName); Map<String, AttributeValue> attributeMap = m_ddbClient.getItem(tableName, makeDDBKey(rowKey)).getItem(); List<DColumn> colList = loadAttributes(attributeMap, colName -> ((Utils.isEmpty(startColumn) || colName.compareTo(startColumn) >= 0) && (Utils.isEmpty(endColumn) || colName.compareTo(endColumn) <= 0)) ); m_logger.debug("getColumns({}, {}, {}, {}) returning {} columns", new Object[]{tableName, rowKey, startColumn, endColumn, colList.size()}); return colList; }
@Override public GetItemResult getItem(String tableName, java.util.Map<String, AttributeValue> key) { return getItem(new GetItemRequest().withTableName(tableName).withKey(key)); }
private Map<String, AttributeValue> readRow(String key, String appid) { if (StringUtils.isBlank(key) || StringUtils.isBlank(appid)) { return null; } Map<String, AttributeValue> row = null; try { GetItemRequest getItemRequest = new GetItemRequest(getTablNameForAppid(appid), Collections.singletonMap(Config._KEY, new AttributeValue(key))); GetItemResult res = client().getItem(getItemRequest); if (res != null && res.getItem() != null && !res.getItem().isEmpty()) { row = res.getItem(); } } catch (Exception e) { logger.error(null, e); } return (row == null || row.isEmpty()) ? null : row; }
private static void retrieveItem() { try { HashMap<String, AttributeValue> key = new HashMap<String, AttributeValue>(); key.put("Id", new AttributeValue().withN("120")); GetItemRequest getItemRequest = new GetItemRequest() .withTableName(tableName) .withKey(key) .withProjectionExpression("Id, ISBN, Title, Authors"); GetItemResult result = client.getItem(getItemRequest); // Check the response. System.out.println("Printing item after retrieving it...."); printItem(result.getItem()); } catch (AmazonServiceException ase) { System.err.println("Failed to retrieve item in " + tableName); } }
@Override public GetItemResult getItem(String tableName, java.util.Map<String, AttributeValue> key, Boolean consistentRead) { return getItem(new GetItemRequest().withTableName(tableName).withKey(key).withConsistentRead(consistentRead)); }
public static void retrieveItem(String threadId, String replyDateTime) throws IOException { HashMap<String, AttributeValue> key = new HashMap<String, AttributeValue>(); key.put("Id", new AttributeValue().withS(threadId)); key.put("ReplyDateTime", new AttributeValue().withS(replyDateTime)); GetItemRequest getReplyRequest = new GetItemRequest() .withTableName(tableName) .withKey(key) .withConsistentRead(true); GetItemResult getReplyResult = client.getItem(getReplyRequest); // Decompress the reply message and print Map<String, AttributeValue> reply = getReplyResult.getItem(); String message = decompressString(reply.get("ExtendedMessage").getB()); System.out.println("Reply message:\n" + " Id: " + reply.get("Id").getS() + "\n" + " ReplyDateTime: " + reply.get("ReplyDateTime").getS() + "\n" + " PostedBy: " + reply.get("PostedBy").getS() + "\n" + " Message: " + reply.get("Message").getS() + "\n" + " ExtendedMessage (decompressed): " + message); }
public GetPointResult getPoint(GetPointRequest getPointRequest) { long geohash = S2Manager.generateGeohash(getPointRequest.getGeoPoint()); long hashKey = S2Manager.generateHashKey(geohash, config.getHashKeyLength()); GetItemRequest getItemRequest = getPointRequest.getGetItemRequest(); getItemRequest.setTableName(config.getTableName()); AttributeValue hashKeyValue = new AttributeValue().withN(String.valueOf(hashKey)); getItemRequest.getKey().put(config.getHashKeyAttributeName(), hashKeyValue); getItemRequest.getKey().put(config.getRangeKeyAttributeName(), getPointRequest.getRangeKeyValue()); GetItemResult getItemResult = config.getDynamoDBClient().getItem(getItemRequest); GetPointResult getPointResult = new GetPointResult(getItemResult); return getPointResult; }