如何将事务动态推送到哈希图的run方法?
例如:
在下面的代码中,名称将作为事务发布。如何动态获取此值。如果它必须通过套接字,这是启动套接字的最佳位置?
public void run() {
String myName = platform.getState().getAddressBookCopy().getAddress(selfId).getSelfName();
console.out.println("Hello Swirld from " + myName);
byte[] transaction = myName.getBytes(StandardCharsets.UTF_8);
platform.createTransaction(transaction, null);
String lastReceived = "";
while (true) {
IPOSAppState state = (IPOSAppState) platform.getState();
String received = state.getReceived();
if (!lastReceived.equals(received)) {
lastReceived = received;
console.out.println("Received: " + received); // print all received transactions
}
try {
Thread.sleep(sleepPeriod);
} catch (Exception e) {
}
}
}
任何示例代码都会有所帮助。
答案 0 :(得分:4)
此项目包含与Swirld sdk通信的Web应用程序的演示。
答案 1 :(得分:0)
新的开源Hedera Hashgraph SDK提供了更多选择。 Hedera Hashgraph已实现了用于构建合同,加密货币,通用实用程序,文件系统,服务等的协议缓冲区API。您可以在下面找到该API的详细信息。
https://github.com/hashgraph/hedera-protobuf
在此存储库本身提供的以下示例中,该API针对事务查询有一个特定的实现。
https://github.com/hashgraph/hedera-protobuf/blob/master/Transaction-Query-Examples.md
希望这对您的要求有意义。