示例#1
0
        private async Task ObtainRegistrations(TransferAssetToUtxo packet, byte[] assetId)
        {
            _logger.Debug($"[{_accountId}]: {nameof(ObtainRegistrations)}");
            IEnumerable <RegistrationKeyDescriptionStore> userRegistrations = await _schemeResolverService.GetRegistrationCommitments(packet.Signer.ToString(), assetId.ToHexString()).ConfigureAwait(false);

            foreach (var userRegistration in userRegistrations)
            {
                string groupOwnerName = await _schemeResolverService.ResolveIssuer(userRegistration.Key).ConfigureAwait(false);

                long registrationId = _dataAccessService.AddUserRegistration(_accountId, userRegistration.Key, userRegistration.Description, userRegistration.AssetId, userRegistration.Issuer);

                if (registrationId > 0)
                {
                    UserRegistrationDto userRegistrationDto = new UserRegistrationDto
                    {
                        UserRegistrationId = registrationId.ToString(),
                        Commitment         = userRegistration.Key,
                        Issuer             = userRegistration.Issuer,
                        AssetId            = userRegistration.AssetId
                    };

                    await _idenitiesHubContext.Clients.Group(_accountId.ToString(CultureInfo.InvariantCulture)).SendAsync("PushUserRegistration", userRegistrationDto).ConfigureAwait(false);
                }
            }
        }