我想向网络节点添加更多节点信息。除了节点配置文件中的数据之外,是否可以共享更多数据?也许是一些自定义字段,比如编码的徽标图像或类似的东西。
感谢
- 是的,你可以
- 在模块的
src
文件夹下添加一个名为config.conf
的文件 - 按以下格式在其中添加值:
key1="string_value"
key2=number_value
- 在
build.gradle
内部,转到定义节点的部分,假设模块名称为"my_module";请执行以下操作:
cordapp (project(':my_module')) {
config project.file("src/config.conf")
}
- 现在运行
deployNodes
时,gradle将在buildnodesmy_nodecordappsconfig
下生成一个名为my_module.conf
的文件 - 要访问流中的这些值:
getServiceHub().getAppContext().getConfig().getString("key1");
- As for testing flow;要模拟自定义配置文件,您需要执行以下操作:
Map<String, String> customConfig = new HashMap<>();
customConfig.put("key1", "string_value");
customConfig.put("key2", "int_value");
// Setup network.
network = new MockNetwork(new MockNetworkParameters().withCordappsForAllNodes(ImmutableList.of(
TestCordapp.findCordapp("my_package").withConfig(customConfig))));