List of usage examples for com.amazonaws.services.dynamodbv2.model DeleteRequest DeleteRequest
public DeleteRequest()
From source file:com.erudika.para.persistence.AWSDynamoDAO.java
License:Apache License
@Override public <P extends ParaObject> void deleteAll(String appid, List<P> objects) { if (objects == null || objects.isEmpty() || StringUtils.isBlank(appid)) { return;/*from w w w.jav a 2s. c om*/ } List<WriteRequest> reqs = new ArrayList<WriteRequest>(objects.size()); for (ParaObject object : objects) { if (object != null) { reqs.add(new WriteRequest().withDeleteRequest(new DeleteRequest().withKey(Collections .singletonMap(Config._KEY, new AttributeValue(getKeyForAppid(object.getId(), appid)))))); } } batchWrite(Collections.singletonMap(getTableNameForAppid(appid), reqs)); logger.debug("DAO.deleteAll() {}", objects.size()); }
From source file:com.intuit.tank.persistence.databases.AmazonDynamoDatabaseDocApi.java
License:Open Source License
/** * @{inheritDoc/*from w w w . j a va2s .co m*/ */ @Override public void deleteForJob(final String tableName, final String jobId, final boolean asynch) { Runnable task = new Runnable() { public void run() { MethodTimer mt = new MethodTimer(logger, this.getClass(), "deleteForJob (" + jobId + ")"); List<Item> items = getItems(tableName, null, null, null, jobId); if (!items.isEmpty()) { List<WriteRequest> requests = new ArrayList<WriteRequest>(); try { for (Item item : items) { String id = null; for (Attribute attr : item.getAttributes()) { if (DatabaseKeys.REQUEST_NAME_KEY.getShortKey().equals(attr.getName())) { id = attr.getValue(); break; } } if (id != null) { Map<String, AttributeValue> keyMap = new HashMap<String, AttributeValue>(); keyMap.put(DatabaseKeys.REQUEST_NAME_KEY.getShortKey(), new AttributeValue().withS(id)); keyMap.put(DatabaseKeys.JOB_ID_KEY.getShortKey(), new AttributeValue().withS(jobId)); DeleteRequest deleteRequest = new DeleteRequest().withKey(keyMap); WriteRequest writeRequest = new WriteRequest().withDeleteRequest(deleteRequest); requests.add(writeRequest); } } sendBatch(tableName, requests); } catch (Exception t) { logger.error("Error adding results: " + t.getMessage(), t); throw new RuntimeException(t); } } mt.endAndLog(); } }; if (asynch) { EXECUTOR.execute(task); } else { task.run(); } }
From source file:jp.xet.uncommons.spring.DynamoPersistentTokenRepository.java
License:Apache License
@Override public void removeUserTokens(String username) { if (logger.isTraceEnabled()) { logger.trace("Remove token: username={}", username); }/*w w w . j ava 2 s . c om*/ try { Condition cond = new Condition().withComparisonOperator(ComparisonOperator.EQ) .withAttributeValueList(new AttributeValue(username)); ScanRequest scanRequest = new ScanRequest().withTableName(persistentLoginTable) .withAttributesToGet(SERIES).withScanFilter(Collections.singletonMap(USERNAME, cond)); ScanResult result = dynamoDb.scan(scanRequest); List<WriteRequest> writeRequests = Lists.newArrayListWithCapacity(result.getCount()); for (Map<String, AttributeValue> item : result.getItems()) { DeleteRequest deleteRequest = new DeleteRequest() .withKey(Collections.singletonMap(SERIES, item.get(SERIES))); writeRequests.add(new WriteRequest().withDeleteRequest(deleteRequest)); } Map<String, List<WriteRequest>> requestItems = Maps.newHashMapWithExpectedSize(0); requestItems.put(persistentLoginTable, writeRequests); BatchWriteItemResult batchItemResult; do { BatchWriteItemRequest batchWriteItemRequest = new BatchWriteItemRequest() .withRequestItems(requestItems); batchItemResult = dynamoDb.batchWriteItem(batchWriteItemRequest); requestItems = batchItemResult.getUnprocessedItems(); if (logger.isDebugEnabled()) { logger.debug("Token removed: {}", batchItemResult); } } while (batchItemResult.getUnprocessedItems().size() > 0); } catch (Exception e) { logger.error("unknown exception", e); } }