Ejemplo n.º 1
0
        public static EthereumTransaction ParseERC20TransactionType(
            this EthereumTransaction transaction)
        {
            if (transaction.Input == "0x")
            {
                return(transaction);
            }

            if (transaction.Currency.Name == "ETH")
            {
                if (transaction.IsERC20TransferTransaction() ||
                    transaction.IsERC20ApproveTransaction())
                {
                    transaction.Type |= BlockchainTransactionType.TokenCall;
                }
                else if (transaction.IsERC20InitiateTransaction() ||
                         transaction.IsERC20RedeemTransaction() ||
                         transaction.IsERC20RefundTransaction())
                {
                    transaction.Type |= BlockchainTransactionType.SwapCall;
                }
            }

            return(transaction);
        }
Ejemplo n.º 2
0
        public static EthereumTransaction ParseERC20Input(
            this EthereumTransaction transaction)
        {
            if (transaction.Input == "0x")
            {
                return(transaction);
            }

            if (transaction.IsERC20TransferTransaction())
            {
                return(transaction.ParseERC20TransferInput());
            }
            else if (transaction.IsERC20InitiateTransaction())
            {
                return(transaction.ParseERC20InitiateInput());
            }
            else if (transaction.IsERC20AddTransaction())
            {
                return(transaction.ParseERC20AddInput());
            }

            return(transaction);
        }