method func
[arg1, arg2, ... ] {trs1, trs2, ... }
- method : query or invoke
- func : function name
- [arg] : mandatory argument
- [arg] : optional argument
- {trs} : mandatory transient
- {trs} : optional transient
// (query) chaincode-id is 'kiesnet-token', function-name is 'account/get', args is 'PCI01A428A6BEF146FB4CA39A50DAA3C21AD287C0448E1D55017F'
QueryByChaincodeRequest queryByChaincodeRequest = client.newQueryProposalRequest();
queryByChaincodeRequest.setChaincodeID('kiesnet-token');
queryByChaincodeRequest.setFcn("account/get");
queryByChaincodeRequest.setArgs("PCI01A428A6BEF146FB4CA39A50DAA3C21AD287C0448E1D55017F");
Collection<ProposalResponse> queryProposals = channel.queryByChaincode(queryByChaincodeRequest);
// (invoke) chaincode-id is 'kiesnet-token', function-name is 'transfer', args are { from: 'PCI01A428A6BEF146FB4CA39A50DAA3C21AD287C0448E1D55017F', to: 'PCI01C218A6BEF146FBA57B1050DAA3C21AD287C0448E1D55017F', amount: 5000}
// Send transaction proposal to peers
TransactionProposalRequest transactionProposalRequest = client.newTransactionProposalRequest();
transactionProposalRequest.setChaincodeID('kiesnet-token');
// The default value of the chaincode language is 'GO_LANG' and the Payprotocol chaincode was implemented with GO_LANG. So, you don't need to set chaincode language field
//transactionProposalRequest.setChaincodeLanguage(Type.GO_LANG);
transactionProposalRequest.setFcn("transfer");
transactionProposalRequest.setProposalWaitTime(testConfig.getProposalWaitTime());
transactionProposalRequest.setArgs("PCI01A428A6BEF146FB4CA39A50DAA3C21AD287C0448E1D55017F", "PCI01C218A6BEF146FBA57B1050DAA3C21AD287C0448E1D55017F", "5000");
Collection<ProposalResponse> transactionPropResp = channel.sendTransactionProposal(transactionProposalRequest);
// Send transaction to orderer
channel.sendTransaction(successful).get(testConfig.getTransactionWaitTime(), TimeUnit.SECONDS);