示例#1
0
        private Stellar.Models.AccountModel RegisterStellarAccount(KeyPair keyPair)
        {
            var accountModel = new Stellar.Models.AccountModel
            {
                KeyPair            = keyPair,
                SequenceNumber     = 1,
                ExistingTrustLines = new List <string>()
            };

            StellarProvider.RegisterAccount(accountModel);
            return(accountModel);
        }
示例#2
0
        public void GenerateCliens(int clientsCount)
        {
            EnsureInited();
            var clients = Enumerable.Range(0, clientsCount).Select(_ => KeyPair.Random()).ToList();
            var info    = AlphaWrapper.ConstellationController.Info();
            var assets  = info.Assets;
            var vault   = KeyPair.FromAccountId(info.Vault);

            foreach (var client in clients)
            {
                var accountModel = RegisterStellarAccount(client);

                var transaction = new TransactionBuilder(accountModel.ToITransactionBuilderAccount());
                foreach (var asset in assets)
                {
                    var stellarAsset = asset.Issuer == null ? new AssetTypeNative() : Asset.CreateNonNativeAsset(asset.Code, asset.Issuer);
                    transaction.AddOperation(new PaymentOperation.Builder(vault, stellarAsset, 1000.ToString()).Build());
                }

                StellarProvider.SubmitTransaction(transaction.Build());
            }
            Clients.AddRange(clients);
        }