链码API接口
Hyperledger Fabric JAVA 语言版本链码有丰富的 API 接口,用户链码通过这些接口直接完成与分布式账本的交互。代码实现详情可以参考 API 接口代码实现。
从功能方面划分,可将 ChaincodeStubImpl 的 API 划分为以下类型:
辅助功能类
方法名称 | 说明 |
---|---|
public List |
获取链码调用请求中调用参数 |
public List |
获取链码调用请求中调用参数 |
public String getFunction() | 获取链码调用的函数名, 默认第一个参数为函数名 |
public List |
获取链码调用请求中调用参数 |
public void setEvent(String name, byte[] payload) | 设置发送的事件 |
public ChaincodeEvent getEvent() | 获取发送的事件 |
public CompositeKey createCompositeKey(String objectType, String… attributes) | 组合属性,形成复合键 |
public CompositeKey splitCompositeKey(String compositeKey) | 将复合键拆分成一系列属性 |
public Response invokeChaincode(final String chaincodeName, final List |
调用其它链码的 Invoke 方法 |
交易信息获取
方法名称 | 说明 |
---|---|
public String getChannelId() | 获取当前的通道名称 |
public String getTxId() | 获取交易的交易 ID |
public SignedProposal getSignedProposal() | 获取交易提案所有相关数据 |
public Instant getTxTimestamp() | 获取交易时间戳 |
public byte[] getCreator() | 获取交易提交者信息 |
public Map |
获取交易的临时信息,这类信息主要用于应用在程序级,并不写入账本数据 |
public byte[] getBinding() | 返回交易的绑定信息,这类绑定主要用于强制应用程序数据与临时信息的链接 |
账本数据操作
方法名称 | 说明 |
---|---|
public byte[] getState(String key) | 获取指定键对应的值 |
public void putState(String key, byte[] value) | 在账本中添加或者更新一对键值 |
public void delState(String key) | 在账本中删除一对键值 |
public byte[] getStateValidationParameter(String key) | 获取特定键值的背书策略 |
public void setStateValidationParameter(String key, byte[] value) | 设置特定键值的背书策略 |
public QueryResultsIterator |
查询指定范围内的键值 |
public QueryResultsIteratorWithMetadata |
分页查询指定范围内的键值 |
public QueryResultsIterator |
查询匹配局部复合键的所有键值 |
public QueryResultsIterator |
查询匹配局部复合键的所有键值 |
public QueryResultsIterator |
查询匹配局部复合键的所有键值 |
public QueryResultsIteratorWithMetadata |
分页查询匹配局部复合键的所有键值 |
public QueryResultsIterator |
使用富查询方式查询状态数据库,状态数据库需要能够支持富查询功能 |
public QueryResultsIteratorWithMetadata |
使用富查询方式分页查询状态数据库,状态数据库需要能够支持富查询功能 |
public QueryResultsIterator |
返回对应键的所有历史值 |
public byte[] getPrivateData(String collection, String key) | 获取指定私有数据集中的键的值 |
public byte[] getPrivateDataHash(String collection, String key) | 获取指定私有数据集中的键的值的 hash |
public byte[] getPrivateDataValidationParameter(String collection, String key) | 获取私有数据集中指定键的背书策略 |
public void putPrivateData(String collection, String key, byte[] value) | 设置指定私有数据集中键的值 |
public void delPrivateData(String collection, String key) | 删除指定私有数据集中指定的键 |
public void setPrivateDataValidationParameter(String collection, String key, byte[] value) | 设置私有数据集中指定键的背书策略 |
public QueryResultsIterator |
获取指定私有数据集中特定范围键的键值 |
public QueryResultsIterator |
获取指定私有数据集中匹配局部复合键的键值 |
public QueryResultsIterator |
获取指定私有数据集中匹配局部复合键的键值 |
public QueryResultsIterator |
获取指定私有数据集中匹配局部复合键的键值 |
public QueryResultsIterator |
通过富查询方式查询私有数据集,状态数据库需要能够支持富查询功能 |
文档内容是否对您有帮助?