Corda - 为模拟网络指定应用程序名称
Corda - Specifying an app name for a mock network
如果我使用 MockNetwork
从单元测试调用 flowSession.getCounterpartyFlowInfo()
,它 returns FlowInfo(flowVersion=1, appName=<unknown>)
这是我当前的 MockNetwork
配置:
network = MockNetwork(
MockNetworkParameters(
cordappsForAllNodes = listOf(
TestCordapp.findCordapp("com.example.contract"),
TestCordapp.findCordapp("com.example.workflow")
),
networkParameters = testNetworkParameters(
minimumPlatformVersion = 5
)
)
)
有没有办法在模拟网络中指定应用程序 运行 的 appName
?
我认为没有相应的配置。 appName 是通过删除“.jar”扩展名从 jar 文件名派生的。
对于 MockNode,扫描包并加载 类。
这是它的推导方式:
val Class<out FlowLogic<*>>.appName: String
get() {
val jarFile = location.toPath()
return if (jarFile.isRegularFile() && jarFile.toString().endsWith(".jar")) {
jarFile.fileName.toString().removeSuffix(".jar")
} else {
"<unknown>"
}
}
如果我使用 MockNetwork
从单元测试调用 flowSession.getCounterpartyFlowInfo()
,它 returns FlowInfo(flowVersion=1, appName=<unknown>)
这是我当前的 MockNetwork
配置:
network = MockNetwork(
MockNetworkParameters(
cordappsForAllNodes = listOf(
TestCordapp.findCordapp("com.example.contract"),
TestCordapp.findCordapp("com.example.workflow")
),
networkParameters = testNetworkParameters(
minimumPlatformVersion = 5
)
)
)
有没有办法在模拟网络中指定应用程序 运行 的 appName
?
我认为没有相应的配置。 appName 是通过删除“.jar”扩展名从 jar 文件名派生的。
对于 MockNode,扫描包并加载 类。
这是它的推导方式:
val Class<out FlowLogic<*>>.appName: String
get() {
val jarFile = location.toPath()
return if (jarFile.isRegularFile() && jarFile.toString().endsWith(".jar")) {
jarFile.fileName.toString().removeSuffix(".jar")
} else {
"<unknown>"
}
}