• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java DeleteRequest类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.amazonaws.services.dynamodbv2.model.DeleteRequest的典型用法代码示例。如果您正苦于以下问题:Java DeleteRequest类的具体用法?Java DeleteRequest怎么用?Java DeleteRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



DeleteRequest类属于com.amazonaws.services.dynamodbv2.model包,在下文中一共展示了DeleteRequest类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: deleteAll

import com.amazonaws.services.dynamodbv2.model.DeleteRequest; //导入依赖的package包/类
@Override
public <P extends ParaObject> void deleteAll(String appid, List<P> objects) {
	if (objects == null || objects.isEmpty() || StringUtils.isBlank(appid)) {
		return;
	}

	List<WriteRequest> reqs = new ArrayList<>(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());
}
 
开发者ID:Erudika,项目名称:para,代码行数:18,代码来源:AWSDynamoDAO.java


示例2: addDeleteRequest

import com.amazonaws.services.dynamodbv2.model.DeleteRequest; //导入依赖的package包/类
protected int addDeleteRequest(AttributeValue tableHashKey, AttributeValue tableRangeKey) {
    Map<String, AttributeValue> primaryKey = genTablePrimaryKey(tableHashKey, tableRangeKey);
    batchDeleteRequests.add(new WriteRequest().withDeleteRequest(new DeleteRequest().withKey(primaryKey)));
    int deletedItems = 0;
    if (batchDeleteRequests.size() == MAX_BATCH_WRITE_REQUEST_NUM) {
        deletedItems = sendDeleteRequests();
    }
    return deletedItems;
}
 
开发者ID:awslabs,项目名称:dynamodb-online-index-violation-detector,代码行数:10,代码来源:TableWriter.java


示例3: deleteForJob

import com.amazonaws.services.dynamodbv2.model.DeleteRequest; //导入依赖的package包/类
/**
 * @{inheritDoc
 */
@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();
    }

}
 
开发者ID:intuit,项目名称:Tank,代码行数:47,代码来源:AmazonDynamoDatabaseDocApi.java


示例4: deleteAllFromSharedTable

import com.amazonaws.services.dynamodbv2.model.DeleteRequest; //导入依赖的package包/类
/**
 * Deletes all objects in a shared table, which belong to a given appid, by scanning the GSI.
 * @param appid app id
 */
public static void deleteAllFromSharedTable(String appid) {
	if (StringUtils.isBlank(appid) || !isSharedAppid(appid)) {
		return;
	}
	Pager pager = new Pager(50);
	List<WriteRequest> allDeletes = new LinkedList<>();
	Page<Item, QueryOutcome> items;
	// read all phase
	do {
		items = queryGSI(appid, pager);
		if (items == null) {
			break;
		}
		for (Item item : items) {
			String key = item.getString(Config._KEY);
			// only delete rows which belong to the given appid
			if (StringUtils.startsWith(key, appid.trim())) {
				logger.debug("Preparing to delete '{}' from shared table, appid: '{}'.", key, appid);
				pager.setLastKey(item.getString(Config._ID));
				allDeletes.add(new WriteRequest().withDeleteRequest(new DeleteRequest().
						withKey(Collections.singletonMap(Config._KEY, new AttributeValue(key)))));
			}
		}
	} while (items.iterator().hasNext());

	// delete all phase
	final int maxItems = 20;
	int batchSteps = (allDeletes.size() > maxItems) ? (allDeletes.size() / maxItems) + 1 : 1;
	List<WriteRequest> reqs = new LinkedList<>();
	Iterator<WriteRequest> it = allDeletes.iterator();
	String tableName = getTableNameForAppid(appid);
	for (int i = 0; i < batchSteps; i++) {
		while (it.hasNext() && reqs.size() < maxItems) {
			reqs.add(it.next());
		}
		if (reqs.size() > 0) {
			logger.info("Deleting {} items belonging to app '{}', from shared table (page {}/{})...",
					reqs.size(), appid, i + 1, batchSteps);
			batchWrite(Collections.singletonMap(tableName, reqs));
		}
		reqs.clear();
	}
}
 
开发者ID:Erudika,项目名称:para,代码行数:48,代码来源:AWSDynamoUtils.java


示例5: writeMultipleItemsBatchWrite

import com.amazonaws.services.dynamodbv2.model.DeleteRequest; //导入依赖的package包/类
private static void writeMultipleItemsBatchWrite() {
     try {
                   
// Begin syntax extract
         
         
// Create a map for the requests in the batch
Map<String, List<WriteRequest>> requestItems = new HashMap<String, List<WriteRequest>>();
 
// Create a PutRequest for a new Forum item
Map<String, AttributeValue> forumItem = new HashMap<String, AttributeValue>();
forumItem.put("Name", new AttributeValue().withS("Amazon RDS"));
forumItem.put("Threads", new AttributeValue().withN("0"));

List<WriteRequest> forumList = new ArrayList<WriteRequest>();
forumList.add(new WriteRequest().withPutRequest(new PutRequest().withItem(forumItem)));
requestItems.put("Forum", forumList);

// Create a PutRequest for a new Thread item
Map<String, AttributeValue> threadItem = new HashMap<String, AttributeValue>();
threadItem.put("ForumName", new AttributeValue().withS("Amazon RDS"));
threadItem.put("Subject", new AttributeValue().withS("Amazon RDS Thread 1"));

List<WriteRequest> threadList = new ArrayList<WriteRequest>();
threadList.add(new WriteRequest().withPutRequest(new PutRequest().withItem(threadItem)));

// Create a DeleteRequest for a Thread item
Map<String, AttributeValue> threadDeleteKey = new HashMap<String, AttributeValue>(); 
threadDeleteKey.put("ForumName", new AttributeValue().withS("Some hash attribute value"));
threadDeleteKey.put("Subject", new AttributeValue().withS("Some range attribute value"));

threadList.add(new WriteRequest().withDeleteRequest(new DeleteRequest().withKey(threadDeleteKey)));
requestItems.put("Thread", threadList);

BatchWriteItemRequest batchWriteItemRequest = new BatchWriteItemRequest();

System.out.println("Making the request.");
                     
batchWriteItemRequest.withRequestItems(requestItems);
client.batchWriteItem(batchWriteItemRequest);

// End syntax extract

                     
     }  catch (AmazonServiceException ase) {
         System.err.println("Failed to retrieve items: ");
         ase.printStackTrace(System.err);
     }  

 }
 
开发者ID:awslabs,项目名称:aws-dynamodb-examples,代码行数:51,代码来源:LowLevelBatchWriteSyntax.java


示例6: writeMultipleItemsBatchWrite

import com.amazonaws.services.dynamodbv2.model.DeleteRequest; //导入依赖的package包/类
private static void writeMultipleItemsBatchWrite() {
    try {                    
        
       // Create a map for the requests in the batch
       Map<String, List<WriteRequest>> requestItems = new HashMap<String, List<WriteRequest>>();
        
       // Create a PutRequest for a new Forum item
       Map<String, AttributeValue> forumItem = new HashMap<String, AttributeValue>();
       forumItem.put("Name", new AttributeValue().withS("Amazon RDS"));
       forumItem.put("Threads", new AttributeValue().withN("0"));
    
       List<WriteRequest> forumList = new ArrayList<WriteRequest>();
       forumList.add(new WriteRequest().withPutRequest(new PutRequest().withItem(forumItem)));
       requestItems.put(table1Name, forumList);
       
       // Create a PutRequest for a new Thread item
       Map<String, AttributeValue> threadItem = new HashMap<String, AttributeValue>();
       threadItem.put("ForumName", new AttributeValue().withS("Amazon RDS"));
       threadItem.put("Subject", new AttributeValue().withS("Amazon RDS Thread 1"));
       threadItem.put("Message", new AttributeValue().withS("ElasticCache Thread 1 message"));
       threadItem.put("KeywordTags", new AttributeValue().withSS(Arrays.asList("cache", "in-memory")));
    
       List<WriteRequest> threadList = new ArrayList<WriteRequest>();
       threadList.add(new WriteRequest().withPutRequest(new PutRequest().withItem(threadItem)));
       
       // Create a DeleteRequest for a Thread item
       Map<String, AttributeValue> threadDeleteKey = new HashMap<String, AttributeValue>(); 
       threadDeleteKey.put("ForumName", new AttributeValue().withS("Amazon S3"));
       threadDeleteKey.put("Subject", new AttributeValue().withS("S3 Thread 100"));
       
       threadList.add(new WriteRequest().withDeleteRequest(new DeleteRequest().withKey(threadDeleteKey)));
       requestItems.put(table2Name, threadList);
       
       BatchWriteItemResult result;
       BatchWriteItemRequest batchWriteItemRequest = new BatchWriteItemRequest()
           .withReturnConsumedCapacity(ReturnConsumedCapacity.TOTAL);
       
       do {
           System.out.println("Making the request.");
                           
           batchWriteItemRequest.withRequestItems(requestItems);
           result = client.batchWriteItem(batchWriteItemRequest);
           
           // Print consumed capacity units
           for(ConsumedCapacity consumedCapacity : result.getConsumedCapacity()) {
                String tableName = consumedCapacity.getTableName();
                Double consumedCapacityUnits = consumedCapacity.getCapacityUnits();
                System.out.println("Consumed capacity units for table " + tableName + ": " + consumedCapacityUnits);
           }
           
           // Check for unprocessed keys which could happen if you exceed provisioned throughput
           System.out.println("Unprocessed Put and Delete requests: \n" + result.getUnprocessedItems());
           requestItems = result.getUnprocessedItems();
       } while (result.getUnprocessedItems().size() > 0);
                    
    }  catch (AmazonServiceException ase) {
        System.err.println("Failed to retrieve items: ");
        ase.printStackTrace(System.err);
    }  

}
 
开发者ID:awslabs,项目名称:aws-dynamodb-examples,代码行数:62,代码来源:LowLevelBatchWrite.java



注:本文中的com.amazonaws.services.dynamodbv2.model.DeleteRequest类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java BcPBEDataDecryptorFactory类代码示例发布时间:2022-05-22
下一篇:
Java KeymapManagerEx类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap