private async void NewChangeManager(string gitProject, string privateKey) { // Deploy new ChangeManager on blockchain web3 = new Web3(new Account(privateKey)); deployment = new ChangeManagerDeployment(); TransactionReceipt receipt = await ChangeManagerService.DeployContractAndWaitForReceiptAsync(web3, deployment); changeManagerService = new ChangeManagerService(web3, receipt.ContractAddress); Web3.GetAddressFromPrivateKey(privateKey); MainWindow mWnd = new MainWindow(receipt.ContractAddress, gitProject); mWnd.Title = "ChangeManager for https://github.com/" + gitProject + " Managed by: " + Web3.GetAddressFromPrivateKey(privateKey);; mWnd.Show(); }
public static async Task <ChangeManagerService> DeployContractAndGetServiceAsync(Web3 web3, ChangeManagerDeployment changeManagerDeployment, CancellationTokenSource cancellationTokenSource = null) { var receipt = await DeployContractAndWaitForReceiptAsync(web3, changeManagerDeployment, cancellationTokenSource); return(new ChangeManagerService(web3, receipt.ContractAddress)); }
public static Task <string> DeployContractAsync(Web3 web3, ChangeManagerDeployment changeManagerDeployment) { return(web3.Eth.GetContractDeploymentHandler <ChangeManagerDeployment>().SendRequestAsync(changeManagerDeployment)); }
public static Task <TransactionReceipt> DeployContractAndWaitForReceiptAsync(Web3 web3, ChangeManagerDeployment changeManagerDeployment, CancellationTokenSource cancellationTokenSource = null) { return(web3.Eth.GetContractDeploymentHandler <ChangeManagerDeployment>().SendRequestAndWaitForReceiptAsync(changeManagerDeployment, cancellationTokenSource)); }