Exemple #1
0
        /// <summary>
        /// Connects the asynchronous.
        /// </summary>
        /// <param name="webSocketUrl">The web socket URL.</param>
        private async Task ConnectAsync(string webSocketUrl)
        {
            Logger.Info($"Connecting to {webSocketUrl}");

            Client = new SubstrateClient(new Uri(webSocketUrl));

            //TODO check if that can be made generic as parameter
            Client.RegisterTypeConverter(new GenericTypeConverter <MogwaiStruct>());
            Client.RegisterTypeConverter(new GenericTypeConverter <MogwaiBios>());

            await Client.ConnectAsync(_connectTokenSource.Token);

            if (!IsConnected)
            {
                Logger.Error("Connection couldn't be established!");
                return;
            }

            var systemName = await Client.System.NameAsync(_connectTokenSource.Token);

            var systemVersion = await Client.System.VersionAsync(_connectTokenSource.Token);

            var systemChain = await Client.System.ChainAsync(_connectTokenSource.Token);

            ChainInfo = new ChainInfo(systemName, systemVersion, systemChain, Client.RuntimeVersion);

            Logger.Info($"Connection established to {ChainInfo}");
        }
Exemple #2
0
        public async Task ConnectAsync(string webSocketUrl)
        {
            Logger.Info($"Connecting to {webSocketUrl}");

            _client = new SubstrateClient(new Uri(webSocketUrl));

            _client.RegisterTypeConverter(new MogwaiStructTypeConverter());

            await _client.ConnectAsync(_connectTokenSource.Token);

            if (!IsConnected)
            {
                Logger.Error($"Connection couldn't be established!");
                return;
            }

            var systemName = await _client.System.NameAsync(_connectTokenSource.Token);

            var systemVersion = await _client.System.VersionAsync(_connectTokenSource.Token);

            var systemChain = await _client.System.ChainAsync(_connectTokenSource.Token);

            ChainInfo = new ChainInfo(systemName, systemVersion, systemChain);

            Logger.Info($"Connection established to {ChainInfo}");
        }
Exemple #3
0
        /// <summary>
        /// Calls the back finalized heads.
        /// </summary>
        /// <param name="subscriptionId">The subscription identifier.</param>
        /// <param name="header">The header.</param>
        public virtual void CallBackFinalizedHeads(string subscriptionId, Header header)
        {
            ChainInfo.UpdateFinalizedHeader(header);

            ChainInfoUpdated?.Invoke(this, ChainInfo);
        }