更新时间:2022-05-05 GMT+08:00
分享

利用合约发送交易

  1. 合约调用信息构建。

    • 接口方法
      ContractRawMessage.class
      public RawMessage buildInvokeRawMsg(String chainId, String name, String function, String[] args)
    • 参数说明

      参数

      类型

      说明

      chainId

      String

      链名称。

      name

      String

      合约名称。

      function

      String

      调用合约中的方法名。

      args

      String[]

      合约方法参数。

    • 返回值

      类型

      说明

      Invocation

      合约调用信息。

  2. 背书请求消息构建。

    • 接口方法
      ContractRawMessage.class
      public RawMessage getRawMessageBuilder(ByteString payload) throws CryptoException
    • 参数说明

      参数

      类型

      说明

      payload

      ByteString

      合约调用信息,由invocation.toByteString()得到。

    • 返回值

      类型

      说明

      RawMessage

      背书请求需发送的消息。

  3. 背书请求消息发送。

    • 接口方法
      ContractAction.class
      public ListenableFuture<RawMessage> invoke(RawMessage rawMessage) throws InvalidParameterException
    • 参数说明

      参数

      类型

      说明

      rawMessage

      RawMessage

      背书请求需发送的消息。

    • 返回值

      类型

      说明

      ListenableFuture

      用于获取发送结果的future对象。

  4. 落盘消息构建。

    • 接口方法
      ContractRawMessage.class
      public TxRawMsg buildTransactionMessage(RawMessage[] rawMessages) throws InvalidProtocolBufferException, TransactionException, CryptoException
    • 参数说明

      参数

      类型

      说明

      rawMessages

      RawMessage

      背书结果。

    • 返回值

      类型

      说明

      TxRawMsg

      交易的消息数据,包含原始信息和哈希。

  5. 落盘消息发送。

    • 接口方法
      ContractRawMessage.class
      public ListenableFuture<RawMessage> transaction(RawMessage rawMessage) throws InvalidParameterException
    • 参数说明

      参数

      类型

      说明

      rawMessage

      RawMessage

      交易原始信息。

    • 返回值

      类型

      说明

      ByteString

      落盘结果。

相关文档