Beispiel #1
0
        public async Task <ulong> Epoch(LocalNodeInfoRequest request, DateTime?deadline = null, CancellationToken context = default)
        {
            var resp = await NetmapClient.LocalNodeInfoAsync(request, deadline : deadline, cancellationToken : context);

            if (!resp.Verify())
            {
                throw new FormatException(nameof(LocalNodeInfo) + " invalid LocalNodeInfo response");
            }
            return(resp.MetaHeader.Epoch);
        }
Beispiel #2
0
        public async Task <NodeInfo> LocalNodeInfo(LocalNodeInfoRequest request, DateTime?deadline = null, CancellationToken context = default)
        {
            var resp = await NetmapClient.LocalNodeInfoAsync(request, deadline : deadline, cancellationToken : context);

            if (!resp.Verify())
            {
                throw new FormatException(nameof(LocalNodeInfo) + " invalid LocalNodeInfo response");
            }
            CheckStatus(resp);
            return(resp.Body.NodeInfo);
        }
Beispiel #3
0
        public async Task <NetworkInfo> NetworkInfo(CallOptions options = null, CancellationToken context = default)
        {
            var opts = DefaultCallOptions.ApplyCustomOptions(options);

            CheckOptions(opts);
            var req = new NetworkInfoRequest
            {
                Body = new NetworkInfoRequest.Types.Body {
                }
            };

            req.MetaHeader = opts.GetRequestMetaHeader();
            opts.Key.Sign(req);
            var resp = await NetmapClient.NetworkInfoAsync(req, cancellationToken : context);

            if (!resp.Verify())
            {
                throw new FormatException(nameof(LocalNodeInfo) + " invalid LocalNodeInfo response");
            }
            CheckStatus(resp);
            return(resp.Body.NetworkInfo);
        }