Beispiel #1
0
        public async Task <bool> WalletExistsAsync()
        {
            var client = new WalletLoaderService.WalletLoaderServiceClient(_channel);
            var resp   = await client.WalletExistsAsync(new WalletExistsRequest(), cancellationToken : _tokenSource.Token);

            return(resp.Exists);
        }
Beispiel #2
0
 public async Task OpenWallet(string pubPassphrase)
 {
     var client  = new WalletLoaderService.WalletLoaderServiceClient(_channel);
     var request = new OpenWalletRequest
     {
         PublicPassphrase = ByteString.CopyFromUtf8(pubPassphrase),
     };
     await client.OpenWalletAsync(request, cancellationToken : _tokenSource.Token);
 }
Beispiel #3
0
 public async Task DiscoverAccountsAsync(string passphrase)
 {
     var client  = new WalletLoaderService.WalletLoaderServiceClient(_channel);
     var request = new DiscoverAddressesRequest
     {
         DiscoverAccounts  = true,
         PrivatePassphrase = ByteString.CopyFromUtf8(passphrase),
     };
     await client.DiscoverAddressesAsync(request, cancellationToken : _tokenSource.Token);
 }
Beispiel #4
0
 public async Task CreateWallet(string pubPassphrase, string privPassphrase, byte[] seed)
 {
     var client  = new WalletLoaderService.WalletLoaderServiceClient(_channel);
     var request = new CreateWalletRequest
     {
         PublicPassphrase  = ByteString.CopyFromUtf8(pubPassphrase),
         PrivatePassphrase = ByteString.CopyFromUtf8(privPassphrase),
         Seed = ByteString.CopyFrom(seed),
     };
     await client.CreateWalletAsync(request, cancellationToken : _tokenSource.Token);
 }
Beispiel #5
0
 public async Task CloseWallet()
 {
     try
     {
         var client = new WalletLoaderService.WalletLoaderServiceClient(_channel);
         await client.CloseWalletAsync(new CloseWalletRequest());
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex);
     }
 }
Beispiel #6
0
 public async Task StartConsensusRpc(ConsensusServerRpcOptions options)
 {
     var certificateTask = ReadFileAsync(options.CertificatePath);
     var client          = new WalletLoaderService.WalletLoaderServiceClient(_channel);
     var request         = new StartConsensusRpcRequest
     {
         NetworkAddress = options.NetworkAddress,
         Username       = options.RpcUser,
         Password       = ByteString.CopyFromUtf8(options.RpcPassword),
         Certificate    = ByteString.CopyFrom(await certificateTask),
     };
     await client.StartConsensusRpcAsync(request, cancellationToken : _tokenSource.Token);
 }
Beispiel #7
0
        public async Task <TupleValue <int, BlockIdentity?> > FetchHeadersAsync()
        {
            var client   = new WalletLoaderService.WalletLoaderServiceClient(_channel);
            var request  = new FetchHeadersRequest();
            var response = await client.FetchHeadersAsync(request, cancellationToken : _tokenSource.Token);

            BlockIdentity?blockIdentity = null;

            if (response.FetchedHeadersCount != 0)
            {
                blockIdentity = new BlockIdentity(new Blake256Hash(response.FirstNewBlockHash.ToByteArray()),
                                                  response.FirstNewBlockHeight);
            }
            return(TupleValue.Create((int)response.FetchedHeadersCount, blockIdentity));
        }
Beispiel #8
0
 public async Task SubscribeToBlockNotificationsAsync()
 {
     var client  = new WalletLoaderService.WalletLoaderServiceClient(_channel);
     var request = new SubscribeToBlockNotificationsRequest();
     await client.SubscribeToBlockNotificationsAsync(request, cancellationToken : _tokenSource.Token);
 }
Beispiel #9
0
 public async Task DiscoverAddressesAsync()
 {
     var client  = new WalletLoaderService.WalletLoaderServiceClient(_channel);
     var request = new DiscoverAddressesRequest();
     await client.DiscoverAddressesAsync(request, cancellationToken : _tokenSource.Token);
 }