All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jd.blockchain.storage.service.ExPolicyKVStorage Maven / Gradle / Ivy

package com.jd.blockchain.storage.service;

import utils.Bytes;

/**
 * 支持存在性策略更新的 KV 存储;
 * 
 * @author huanghaiquan
 *
 */
public interface ExPolicyKVStorage extends BatchStorageService{

	/**
	 * 返回“键”对应的“值”;
* 如果“键”不存在,则返回 null; * * @param key * @return */ byte[] get(Bytes key); /** * 如果满足指定的存在性策略,则创建/更新指定的“键-值”; * * @param key * 键; * @param value * 值; * @param ex * 如果指定 {@link ExPolicy#EXISTING} ,则只有键存在时才更新;
* 如果指定 {@link ExPolicy#NOT_EXISTING} ,则只有键不存在时才更新/创建; * @return 如果符合存在性策略,并执行了创建/更新操作,则返回 true,否则返回 false; */ boolean set(Bytes key, byte[] value, ExPolicy ex); /** * 指定的 key 是否存在; * * @param key * @return */ boolean exist(Bytes key); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy