Class EthereumDynamicFee


  • public class EthereumDynamicFee
    extends AbstractTransaction
    Represents an ethereum access list transaction.
    • Constructor Detail

      • EthereumDynamicFee

        public EthereumDynamicFee​(EthereumDynamicFee.Builder builder)
        Creates a EthereumDynamicFee instance.
        Parameters:
        builder - EthereumDynamicFee.Builder instance.
      • EthereumDynamicFee

        public EthereumDynamicFee​(Klay klaytnCall,
                                  java.lang.String from,
                                  java.lang.String nonce,
                                  java.lang.String gas,
                                  java.lang.String maxPriorityFeePerGas,
                                  java.lang.String maxFeePerGas,
                                  java.lang.String chainId,
                                  java.util.List<SignatureData> signatures,
                                  java.lang.String to,
                                  java.lang.String input,
                                  java.lang.String value,
                                  AccessList accessList)
        Create a EthereumDynamicFee instance.
        Parameters:
        klaytnCall - Klay RPC instance
        from - The address of the sender.
        nonce - A value used to uniquely identify a sender’s transaction.
        gas - The maximum amount of gas the transaction is allowed to use.
        maxPriorityFeePerGas - Max priority fee per gas.
        maxFeePerGas - Max fee per gas.
        chainId - Network ID
        signatures - A Signature list
        to - The account address that will receive the transferred value.
        input - Data attached to the transaction, used for transaction execution.
        value - The amount of KLAY in peb to be transferred.
    • Method Detail

      • create

        public static EthereumDynamicFee create​(Klay klaytnCall,
                                                java.lang.String from,
                                                java.lang.String nonce,
                                                java.lang.String gas,
                                                java.lang.String maxPriorityFeePerGas,
                                                java.lang.String maxFeePerGas,
                                                java.lang.String chainId,
                                                java.util.List<SignatureData> signatures,
                                                java.lang.String to,
                                                java.lang.String input,
                                                java.lang.String value,
                                                AccessList accessList)
        Create a EthereumDynamicFee instance.
        Parameters:
        klaytnCall - Klay RPC instance
        from - The address of the sender.
        nonce - A value used to uniquely identify a sender’s transaction.
        gas - The maximum amount of gas the transaction is allowed to use.
        maxPriorityFeePerGas - Max priority fee per gas.
        maxFeePerGas - Max fee per gas.
        chainId - Network ID
        signatures - A Signature list
        to - The account address that will receive the transferred value.
        input - Data attached to the transaction, used for transaction execution.
        value - The amount of KLAY in peb to be transferred.
        accessList - The EIP-2930 access list.
        Returns:
        EthereumDynamicFee
      • getRLPEncoding

        public java.lang.String getRLPEncoding()
        Returns the RLP-encoded string of this transaction (i.e., rawTransaction).
        Specified by:
        getRLPEncoding in class AbstractTransaction
        Returns:
        String
      • getCommonRLPEncodingForSignature

        public java.lang.String getCommonRLPEncodingForSignature()
        Returns the RLP-encoded string to make the signature of this transaction.
        Specified by:
        getCommonRLPEncodingForSignature in class AbstractTransaction
        Returns:
        String
      • getRLPEncodingForSignature

        public java.lang.String getRLPEncodingForSignature()
        Returns the RLP-encoded string to make the signature of this transaction.
        Overrides:
        getRLPEncodingForSignature in class AbstractTransaction
        Returns:
        String
      • compareTxField

        public boolean compareTxField​(AbstractTransaction obj,
                                      boolean checkSig)
        Check equals txObj passed parameter and Current instance.
        Overrides:
        compareTxField in class AbstractTransaction
        Parameters:
        obj - The AbstractTransaction Object to compare
        checkSig - Check whether signatures field is equal.
        Returns:
        boolean
      • combineSignedRawTransactions

        public java.lang.String combineSignedRawTransactions​(java.util.List<java.lang.String> rlpEncoded)
        Combines signatures to the transaction from RLP-encoded transaction strings and returns a single transaction with all signatures combined. When combining the signatures into a transaction instance, an error is thrown if the decoded transaction contains different value except signatures.
        Specified by:
        combineSignedRawTransactions in class AbstractTransaction
        Parameters:
        rlpEncoded - A List of RLP-encoded transaction strings.
        Returns:
        String
      • fillTransaction

        public void fillTransaction()
                             throws java.io.IOException
        Fills empty optional transaction fields.(maxPriorityFeePerGas and maxFeePerGas)
        Overrides:
        fillTransaction in class AbstractTransaction
        Throws:
        java.io.IOException
      • validateOptionalValues

        public void validateOptionalValues​(boolean checkChainID)
        Checks that member variables that can be defined by the user are defined. If there is an undefined variable, an error occurs.
        Overrides:
        validateOptionalValues in class AbstractTransaction
      • decode

        public static EthereumDynamicFee decode​(java.lang.String rlpEncoded)
        Decodes a RLP-encoded EthereumDynamicFee string.
        Parameters:
        rlpEncoded - RLP-encoded EthereumDynamicFee string
        Returns:
        EthereumDynamicFee
      • decode

        public static EthereumDynamicFee decode​(byte[] rlpEncoded)
        Decodes a RLP-encoded EthereumDynamicFee byte array.
        Parameters:
        rlpEncoded - RLP-encoded EthereumDynamicFee byte array.
        Returns:
        EthereumDynamicFee
      • appendSignatures

        public void appendSignatures​(SignatureData signatureData)
        Appends signatures array to transaction. EthereumDynamicFee transaction cannot have more than one signature, so an error occurs if the transaction already has a signature.
        Overrides:
        appendSignatures in class AbstractTransaction
        Parameters:
        signatureData - SignatureData instance contains ECDSA signature data
      • appendSignatures

        public void appendSignatures​(java.util.List<SignatureData> signatureData)
        Appends signatures array to transaction. EthereumDynamicFee transaction cannot have more than one signature, so an error occurs if the transaction already has a signature.
        Overrides:
        appendSignatures in class AbstractTransaction
        Parameters:
        signatureData - List of SignatureData contains ECDSA signature data
      • sign

        public AbstractTransaction sign​(java.lang.String keyString)
                                 throws java.io.IOException
        Signs to the transaction with a single private key. It sets Hasher default value. - signer : TransactionHasher.getHashForSignature()
        Overrides:
        sign in class AbstractTransaction
        Parameters:
        keyString - The private key string.
        Returns:
        AbstractTransaction
        Throws:
        java.io.IOException
      • sign

        public AbstractTransaction sign​(AbstractKeyring keyring,
                                        java.util.function.Function<AbstractTransaction,​java.lang.String> signer)
                                 throws java.io.IOException
        Signs using all private keys used in the role defined in the Keyring instance. It sets index and Hasher default value.
        Overrides:
        sign in class AbstractTransaction
        Parameters:
        keyring - The Keyring instance.
        signer - The function to get hash of transaction.
        Returns:
        AbstractTransaction
        Throws:
        java.io.IOException
      • sign

        public AbstractTransaction sign​(AbstractKeyring keyring)
                                 throws java.io.IOException
        Signs using all private keys used in the role defined in the Keyring instance. It sets index and Hasher default value. - signer : TransactionHasher.getHashForSignature()
        Overrides:
        sign in class AbstractTransaction
        Parameters:
        keyring - The Keyring instance.
        Returns:
        AbstractTransaction
        Throws:
        java.io.IOException
      • sign

        public AbstractTransaction sign​(java.lang.String keyString,
                                        java.util.function.Function<AbstractTransaction,​java.lang.String> signer)
                                 throws java.io.IOException
        Signs to the transaction with a single private key.
        Overrides:
        sign in class AbstractTransaction
        Parameters:
        keyString - The private key string
        signer - The function to get hash of transaction.
        Returns:
        AbstractTransaction
        Throws:
        java.io.IOException
      • sign

        public AbstractTransaction sign​(AbstractKeyring keyring,
                                        int index)
                                 throws java.io.IOException
        Signs to the transaction with a private key in the Keyring instance. It sets signer to TransactionHasher.getHashForSignature()
        Overrides:
        sign in class AbstractTransaction
        Parameters:
        keyring - The Keyring instance.
        index - The index of private key to use in Keyring instance.
        Returns:
        AbstractTransaction
        Throws:
        java.io.IOException
      • sign

        public AbstractTransaction sign​(AbstractKeyring keyring,
                                        int index,
                                        java.util.function.Function<AbstractTransaction,​java.lang.String> signer)
                                 throws java.io.IOException
        Signs to the transaction with a private key in the Keyring instance.
        Overrides:
        sign in class AbstractTransaction
        Parameters:
        keyring - The Keyring instance.
        index - The index of private key to use in Keyring instance.
        signer - The function to get hash of transaction.
        Returns:
        AbstractTransaction
        Throws:
        java.io.IOException
      • getTo

        public java.lang.String getTo()
        Getter function for to
        Returns:
        String
      • setTo

        public void setTo​(java.lang.String to)
        Setter function for to
        Parameters:
        to - The account address that will receive the transferred value.
      • getInput

        public java.lang.String getInput()
        Getter function for input
        Returns:
        String
      • setInput

        public void setInput​(java.lang.String input)
        Setter function for input
        Parameters:
        input - Data attached to the transaction.
      • getValue

        public java.lang.String getValue()
        Getter function for value
        Returns:
        String
      • setValue

        public void setValue​(java.lang.String value)
        Setter function for value
        Parameters:
        value - The amount of KLAY in peb to be transferred.
      • setValue

        public void setValue​(java.math.BigInteger value)
        Setter function for value
        Parameters:
        value - The amount of KLAY in peb to be transferred.
      • getAccessList

        public AccessList getAccessList()
        Getter function for accessList
        Returns:
        accessList Access list is an EIP-2930 access list.
      • setAccessList

        public void setAccessList​(AccessList accessList)
        Setter function for accessList
        Parameters:
        accessList - Access list is an EIP-2930 access list.
      • getMaxPriorityFeePerGas

        public java.lang.String getMaxPriorityFeePerGas()
        Getter function for maxPriorityFeePerGas
        Returns:
        String
      • setMaxPriorityFeePerGas

        public void setMaxPriorityFeePerGas​(java.lang.String maxPriorityFeePerGas)
        Setter function for maxPriorityFeePerGas.
        Parameters:
        maxPriorityFeePerGas - Max priority fee per gas.
      • setMaxPriorityFeePerGas

        public void setMaxPriorityFeePerGas​(java.math.BigInteger maxPriorityFeePerGas)
        Setter function for maxPriorityFeePerGas.
        Parameters:
        maxPriorityFeePerGas - Max priority fee per gas.
      • getMaxFeePerGas

        public java.lang.String getMaxFeePerGas()
        Getter function for maxFeePerGas.
        Returns:
        String
      • setMaxFeePerGas

        public void setMaxFeePerGas​(java.lang.String maxFeePerGas)
        Setter function for maxFeePerGas.
        Parameters:
        maxFeePerGas - Max fee per gas.
      • setMaxFeePerGas

        public void setMaxFeePerGas​(java.math.BigInteger maxFeePerGas)
        Setter function for gas price.
        Parameters:
        maxFeePerGas - Max fee per gas.