package blockchain.query; import blockchain.client.ChannelClientWrapper; import blockchain.client.FabricClientWrapper; import blockchain.configuration.Config; import blockchain.user.UserContext; import blockchain.utility.Util; import org.hyperledger.fabric.sdk.BlockEvent; import org.hyperledger.fabric.sdk.ChaincodeID; import org.hyperledger.fabric.sdk.ProposalResponse; import org.hyperledger.fabric.sdk.TransactionProposalRequest; import java.util.Collection; public class TransactionWrapper { public String sendTransaction(String from, String to, String amount){ try{ UserContext userContext = Util.readUserContext(Config.ORG1,"User-org1"); String chaincode = Config.CHAINCODE_NAME; FabricClientWrapper fabricClientWrapper = new FabricClientWrapper(userContext); ChannelClientWrapper channelClientWrapper = ChannelClientWrapper.setupChannel(fabricClientWrapper); TransactionProposalRequest tpr = fabricClientWrapper.getClient().newTransactionProposalRequest(); ChaincodeID cid = ChaincodeID.newBuilder().setName(Config.CHAINCODE_NAME).build(); tpr.setChaincodeID(cid); tpr.setFcn("invoke"); tpr.setArgs(new String[]{from,to,amount}); Collection responses = channelClientWrapper.sendTransactionProposal(tpr); System.out.println("VERIFY HERE, TRY TO SEND TRANSACTION"); BlockEvent.TransactionEvent event = channelClientWrapper.sendTransaction(responses); return event.getTransactionID(); }catch (Exception e){ e.printStackTrace(); return null; } } }