Beispiel #1
0
        private void SetInit()
        {
            listCrypto = new List <Crypto>
            {
                new Crypto("Bitcoin", 159010055274, 9402.78f, 6595810000, 16910962, "change1"),
                new Crypto("Ethereum", 71893913561, 732.87f, 1835810000, 98099270, "change1"),
                new Crypto("Ripple", 32611370307, 0.834222f, 716917000, 39091956706, "change1"),
                new Crypto("Bitcoin Cash", 17821429077, 1047.72f, 418281000, 17009725, "change1"),
                new Crypto("Litecoin", 10390823403, 187.01f, 834576000, 55564118, "change1"),
                new Crypto("NEO", 6011330000, 92.48f, 170323000, 65000000, "change1"),
                new Crypto("Stellar", 5754487975, 0.311080f, 29763700, 18498418332, "change1"),
                new Crypto("Cardano", 5662524060, 0.218402f, 166294000, 25927070538, "change1"),
                new Crypto("Monero", 4526770906, 286.35f, 103598000, 15808690, "change1"),
                new Crypto("EOS", 4428154830, 6.16f, 327224000, 718589166, "change1"),
                new Crypto("Dash", 4113657634, 518.25f, 101188000, 7937532, "change1"),
                new Crypto("IOTA", 3998910218, 1.44f, 40928400, 2779530283, "change1")
            };
            cryptoAdapter = new CryptoAdapter(this, listCrypto);

            listViewCrypto.Adapter = cryptoAdapter;

            searchView.QueryTextChange += SearchView_QueryTextChange;
        }
Beispiel #2
0
        public async Task <IResponse <NoValue> > CreateCryptoAdapter(CryptoAdapterModel model, long userProfileId)
        {
            var result = new Response <NoValue>();

            try
            {
                var connection = await TestConnection(model);

                if (connection.Status != StatusEnum.Success)
                {
                    result.Status  = StatusEnum.Error;
                    result.Message = connection.Message;
                    return(result);
                }

                Adapter newAdapter = new Adapter
                {
                    Name = model.Name,
                    AdapterTypeItemId = (int)model.NodeType,
                    DirectionId       = (int)model.Direction,
                    UserProfileId     = userProfileId,
                    StatusId          = (int)Statuses.Active
                };
                _entity.Adapter.Add(newAdapter);

                CryptoAdapter cryptoAdapter = new CryptoAdapter
                {
                    RpcAddr   = model.RpcAddr,
                    RpcPort   = model.RpcPort.ToString(),
                    AdapterId = newAdapter.Id
                };
                _entity.CryptoAdapter.Add(cryptoAdapter);

                switch (model.Direction)
                {
                case DirectionEnum.Source:
                    foreach (var prop in model.Properties.First().SourceProperties ?? new List <PropertyModel>())
                    {
                        var cryptoAdapterProperty = new CryptoAdapterProperty
                        {
                            CryptoAdapter = cryptoAdapter,
                            PropertyId    = prop.Id,
                            Value         = prop.Value ?? String.Empty
                        };
                        _entity.CryptoAdapterProperty.Add(cryptoAdapterProperty);
                    }
                    break;

                case DirectionEnum.Destination:
                    foreach (var prop in model.Properties.First().DestinationProperties ?? new List <PropertyModel>())
                    {
                        var cryptoAdapterProperty = new CryptoAdapterProperty
                        {
                            CryptoAdapter = cryptoAdapter,
                            PropertyId    = prop.Id,
                            Value         = prop.Value ?? String.Empty
                        };
                        _entity.CryptoAdapterProperty.Add(cryptoAdapterProperty);
                    }
                    break;

                default:
                    break;
                }
                _entity.SaveChanges();

                result.Status  = StatusEnum.Success;
                result.Message = "Connection test succeeded. Crypto adapter added successfully.";
            }
            catch (Exception ex)
            {
                result.Status  = StatusEnum.Error;
                result.Message = Message.SomethingWentWrong;
                _logger.Information($"CryptoAdapterService.CreateCryptoAdapter(model: {model}, userProfileId: {userProfileId})");
                _logger.Error(ex.Message);
            }

            return(result);
        }