在CORDA

时间:2017-10-26 10:24:17

标签: corda

我正在尝试创建一个包含4个节点和2个公证人的DLT,其中每个公证人负责与2个节点进行通信。

示例Gradle配置

task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
directory "./build/nodes"
networkMap "O=Controller,L=London,C=GB"
node {
    name "O=Controller,L=London,C=GB"
    advertisedServices = ["corda.notary.validating"]
    p2pPort 10002
    rpcPort 10003
    cordapps = ["net.corda:corda-finance:$corda_release_version"]
}
node {
    name "O=ControllerNY,L=New York,C=US"
    advertisedServices = ["corda.notary.validating"]
    p2pPort 10004
    rpcPort 10005
    cordapps = ["net.corda:corda-finance:$corda_release_version"]
}
node {
    name "O=PartyA,L=London,C=GB"
    advertisedServices = []
    p2pPort 10006
    rpcPort 10007
    webPort 10008
    cordapps = ["net.corda:corda-finance:$corda_release_version"]
    rpcUsers = [[ user: "user1", "password": "test", "permissions": []]]
}
node {
    name "O=PartyB,L=London,C=GB"
    advertisedServices = []
    p2pPort 10009
    rpcPort 10010
    webPort 10011
    cordapps = ["net.corda:corda-finance:$corda_release_version"]
    rpcUsers = [[ user: "user1", "password": "test", "permissions": []]]
}
node {
    name "O=PartyC,L=New York,C=US"
    advertisedServices = []
    p2pPort 10012
    rpcPort 10013
    webPort 10014
    cordapps = ["net.corda:corda-finance:$corda_release_version"]
    rpcUsers = [[ user: "user1", "password": "test", "permissions": []]]
}
node {
    name "O=PartyD,L=New York,C=US"
    advertisedServices = []
    p2pPort 10015
    rpcPort 10016
    webPort 10017
    cordapps = ["net.corda:corda-finance:$corda_release_version"]
    rpcUsers = [[ user: "user1", "password": "test", "permissions": []]]
}

}

如何将controllercontrollerNY添加到网络中,以便将其选为公证人而不是普通节点

1 个答案:

答案 0 :(得分:1)

在这种情况下,ControllerControllerNY都会作为公证人添加到您的网络中,因为它们都会宣传公证服务。

然后,每个节点都可以自由地使用公证人来处理给定的事务。您可以使用以下内容在流程中选择公证人。

serviceHub.networkMapCache.getNotary(notaryToUse)

或者

serviceHub.networkMapCache.notaryIdentities.single { it.name.organisation == notaryToUse }