Class ImmutablePaymentChannelFund

    • Method Detail

      • account

        public Address account()
        The unique Address of the account that initiated this transaction.
        Specified by:
        account in interface Transaction
        Returns:
        The Address of the account submitting this transaction.
      • fee

        public XrpCurrencyAmount fee()
        The String representation of an integer amount of XRP, in drops, to be destroyed as a cost for distributing this Payment transaction to the network.

        This field is auto-fillable

        Specified by:
        fee in interface Transaction
        Returns:
        An XrpCurrencyAmount representing the transaction cost.
        See Also:
        "https://xrpl.org/transaction-common-fields.html#auto-fillable-fields"
      • sequence

        public com.google.common.primitives.UnsignedInteger sequence()
        The sequence number of the account submitting the Transaction. A Transaction is only valid if the Sequence number is exactly 1 greater than the previous transaction from the same account.

        This field is auto-fillable

        Specified by:
        sequence in interface Transaction
        Returns:
        An UnsignedInteger representing the sequence of the transaction.
        See Also:
        "https://xrpl.org/transaction-common-fields.html#auto-fillable-fields"
      • accountTransactionId

        public Optional<Hash256> accountTransactionId()
        Hash value identifying another transaction. If provided, this Transaction is only valid if the sending account's previously-sent transaction matches the provided hash.
        Specified by:
        accountTransactionId in interface Transaction
        Returns:
        An Optional of type Hash256 containing the account transaction ID.
      • lastLedgerSequence

        public Optional<com.google.common.primitives.UnsignedInteger> lastLedgerSequence()
        Highest ledger index this transaction can appear in. Specifying this field places a strict upper limit on how long the transaction can wait to be validated or rejected.
        Specified by:
        lastLedgerSequence in interface Transaction
        Returns:
        An Optional of type UnsignedInteger representing the last ledger sequence.
      • sourceTag

        public Optional<com.google.common.primitives.UnsignedInteger> sourceTag()
        Arbitrary UnsignedInteger used to identify the reason for this Transaction, or a sender on whose behalf this Transaction is made.
        Specified by:
        sourceTag in interface Transaction
        Returns:
        An Optional UnsignedInteger representing the source account's tag.
      • signingPublicKey

        public Optional<String> signingPublicKey()
        Hex representation of the public key that corresponds to the private key used to sign this transaction. If an empty string, indicates a multi-signature is present in the Transaction.signers() field instead.

        This field is automatically added when signing this Transaction.

        Specified by:
        signingPublicKey in interface Transaction
        Returns:
        An Optional String containing the public key of the account submitting the transaction.
      • transactionSignature

        public Optional<String> transactionSignature()
        The signature that verifies this transaction as originating from the account it says it is from.

        This field is automatically added when signing this Transaction.

        Specified by:
        transactionSignature in interface Transaction
        Returns:
        An Optional String containing the transaction signature.
      • closeDate

        @Deprecated
        public Optional<com.google.common.primitives.UnsignedLong> closeDate()
        Deprecated.
        This field will be removed in favor of TransactionResult.closeDate();
        The approximate close time (using Ripple Epoch) of the ledger containing this transaction. This is an undocumented field.
        Specified by:
        closeDate in interface Transaction
        Returns:
        An optionally-present UnsignedLong.
      • amount

        public XrpCurrencyAmount amount()
        Amount of XRP, in drops to add to the channel. This field is required, therefore it is not possible to set the expiration() without adding value to the channel. However, you can change the expiration and add a negligible amount of XRP (like 1 drop) to the channel.
        Specified by:
        amount in interface PaymentChannelFund
        Returns:
        An XrpCurrencyAmount representing the amount of the payment channel.
      • expiration

        public Optional<com.google.common.primitives.UnsignedLong> expiration()
        New Expiration time to set for the channel, in seconds since the Ripple Epoch. This must be later than either the current time plus the SettleDelay of the channel, or the existing Expiration of the channel. After the Expiration time, any transaction that would access the channel closes the channel without taking its normal action. Any unspent XRP is returned to the source address when the channel closes. (Expiration is separate from the channel's immutable CancelAfter time.)
        Specified by:
        expiration in interface PaymentChannelFund
        Returns:
        An Optional of type UnsignedLong.
      • withAccount

        public final ImmutablePaymentChannelFund withAccount​(Address value)
        Copy the current immutable object by setting a value for the account attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for account
        Returns:
        A modified copy of the this object
      • withFee

        public final ImmutablePaymentChannelFund withFee​(XrpCurrencyAmount value)
        Copy the current immutable object by setting a value for the fee attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for fee
        Returns:
        A modified copy of the this object
      • withSequence

        public final ImmutablePaymentChannelFund withSequence​(com.google.common.primitives.UnsignedInteger value)
        Copy the current immutable object by setting a value for the sequence attribute. An equals check used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for sequence
        Returns:
        A modified copy of the this object
      • withAccountTransactionId

        public final ImmutablePaymentChannelFund withAccountTransactionId​(Hash256 value)
        Copy the current immutable object by setting a present value for the optional accountTransactionId attribute.
        Parameters:
        value - The value for accountTransactionId
        Returns:
        A modified copy of this object
      • withAccountTransactionId

        public final ImmutablePaymentChannelFund withAccountTransactionId​(Optional<? extends Hash256> optional)
        Copy the current immutable object by setting an optional value for the accountTransactionId attribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for accountTransactionId
        Returns:
        A modified copy of this object
      • withLastLedgerSequence

        public final ImmutablePaymentChannelFund withLastLedgerSequence​(com.google.common.primitives.UnsignedInteger value)
        Copy the current immutable object by setting a present value for the optional lastLedgerSequence attribute.
        Parameters:
        value - The value for lastLedgerSequence
        Returns:
        A modified copy of this object
      • withLastLedgerSequence

        public final ImmutablePaymentChannelFund withLastLedgerSequence​(Optional<? extends com.google.common.primitives.UnsignedInteger> optional)
        Copy the current immutable object by setting an optional value for the lastLedgerSequence attribute. An equality check is used on inner nullable value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for lastLedgerSequence
        Returns:
        A modified copy of this object
      • withMemos

        public final ImmutablePaymentChannelFund withMemos​(MemoWrapper... elements)
        Copy the current immutable object with elements that replace the content of memos.
        Parameters:
        elements - The elements to set
        Returns:
        A modified copy of this object
      • withMemos

        public final ImmutablePaymentChannelFund withMemos​(Iterable<? extends MemoWrapper> elements)
        Copy the current immutable object with elements that replace the content of memos. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        elements - An iterable of memos elements to set
        Returns:
        A modified copy of this object
      • withSigners

        public final ImmutablePaymentChannelFund withSigners​(SignerWrapper... elements)
        Copy the current immutable object with elements that replace the content of signers.
        Parameters:
        elements - The elements to set
        Returns:
        A modified copy of this object
      • withSigners

        public final ImmutablePaymentChannelFund withSigners​(Iterable<? extends SignerWrapper> elements)
        Copy the current immutable object with elements that replace the content of signers. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        elements - An iterable of signers elements to set
        Returns:
        A modified copy of this object
      • withSourceTag

        public final ImmutablePaymentChannelFund withSourceTag​(com.google.common.primitives.UnsignedInteger value)
        Copy the current immutable object by setting a present value for the optional sourceTag attribute.
        Parameters:
        value - The value for sourceTag
        Returns:
        A modified copy of this object
      • withSourceTag

        public final ImmutablePaymentChannelFund withSourceTag​(Optional<? extends com.google.common.primitives.UnsignedInteger> optional)
        Copy the current immutable object by setting an optional value for the sourceTag attribute. An equality check is used on inner nullable value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for sourceTag
        Returns:
        A modified copy of this object
      • withSigningPublicKey

        public final ImmutablePaymentChannelFund withSigningPublicKey​(String value)
        Copy the current immutable object by setting a present value for the optional signingPublicKey attribute.
        Parameters:
        value - The value for signingPublicKey
        Returns:
        A modified copy of this object
      • withSigningPublicKey

        public final ImmutablePaymentChannelFund withSigningPublicKey​(Optional<String> optional)
        Copy the current immutable object by setting an optional value for the signingPublicKey attribute. An equality check is used on inner nullable value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for signingPublicKey
        Returns:
        A modified copy of this object
      • withTransactionSignature

        public final ImmutablePaymentChannelFund withTransactionSignature​(String value)
        Copy the current immutable object by setting a present value for the optional transactionSignature attribute.
        Parameters:
        value - The value for transactionSignature
        Returns:
        A modified copy of this object
      • withTransactionSignature

        public final ImmutablePaymentChannelFund withTransactionSignature​(Optional<String> optional)
        Copy the current immutable object by setting an optional value for the transactionSignature attribute. An equality check is used on inner nullable value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for transactionSignature
        Returns:
        A modified copy of this object
      • withCloseDate

        @Deprecated
        public final ImmutablePaymentChannelFund withCloseDate​(com.google.common.primitives.UnsignedLong value)
        Deprecated.
        Copy the current immutable object by setting a present value for the optional closeDate attribute.
        Parameters:
        value - The value for closeDate
        Returns:
        A modified copy of this object
      • withCloseDate

        @Deprecated
        public final ImmutablePaymentChannelFund withCloseDate​(Optional<? extends com.google.common.primitives.UnsignedLong> optional)
        Deprecated.
        Copy the current immutable object by setting an optional value for the closeDate attribute. An equality check is used on inner nullable value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for closeDate
        Returns:
        A modified copy of this object
      • withHash

        @Deprecated
        public final ImmutablePaymentChannelFund withHash​(Hash256 value)
        Deprecated.
        Copy the current immutable object by setting a present value for the optional hash attribute.
        Parameters:
        value - The value for hash
        Returns:
        A modified copy of this object
      • withHash

        @Deprecated
        public final ImmutablePaymentChannelFund withHash​(Optional<? extends Hash256> optional)
        Deprecated.
        Copy the current immutable object by setting an optional value for the hash attribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for hash
        Returns:
        A modified copy of this object
      • withLedgerIndex

        @Deprecated
        public final ImmutablePaymentChannelFund withLedgerIndex​(LedgerIndex value)
        Deprecated.
        Copy the current immutable object by setting a present value for the optional ledgerIndex attribute.
        Parameters:
        value - The value for ledgerIndex
        Returns:
        A modified copy of this object
      • withLedgerIndex

        @Deprecated
        public final ImmutablePaymentChannelFund withLedgerIndex​(Optional<? extends LedgerIndex> optional)
        Deprecated.
        Copy the current immutable object by setting an optional value for the ledgerIndex attribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for ledgerIndex
        Returns:
        A modified copy of this object
      • withChannel

        public final ImmutablePaymentChannelFund withChannel​(Hash256 value)
        Copy the current immutable object by setting a value for the channel attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for channel
        Returns:
        A modified copy of the this object
      • withAmount

        public final ImmutablePaymentChannelFund withAmount​(XrpCurrencyAmount value)
        Copy the current immutable object by setting a value for the amount attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for amount
        Returns:
        A modified copy of the this object
      • withExpiration

        public final ImmutablePaymentChannelFund withExpiration​(com.google.common.primitives.UnsignedLong value)
        Copy the current immutable object by setting a present value for the optional expiration attribute.
        Parameters:
        value - The value for expiration
        Returns:
        A modified copy of this object
      • withExpiration

        public final ImmutablePaymentChannelFund withExpiration​(Optional<? extends com.google.common.primitives.UnsignedLong> optional)
        Copy the current immutable object by setting an optional value for the expiration attribute. An equality check is used on inner nullable value to prevent copying of the same value by returning this.
        Parameters:
        optional - A value for expiration
        Returns:
        A modified copy of this object
      • equals

        public boolean equals​(@Nullable
                              Object another)
        This instance is equal to all instances of ImmutablePaymentChannelFund that have equal attribute values.
        Overrides:
        equals in class Object
        Returns:
        true if this is equal to another instance
      • hashCode

        public int hashCode()
        Computes a hash code from attributes: account, fee, sequence, accountTransactionId, lastLedgerSequence, memos, signers, sourceTag, signingPublicKey, transactionSignature, closeDate, hash, ledgerIndex, flags, channel, amount, expiration.
        Overrides:
        hashCode in class Object
        Returns:
        hashCode value
      • toString

        public String toString()
        Prints the immutable value PaymentChannelFund with attribute values.
        Overrides:
        toString in class Object
        Returns:
        A string representation of the value
      • copyOf

        public static ImmutablePaymentChannelFund copyOf​(PaymentChannelFund instance)
        Creates an immutable copy of a PaymentChannelFund value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
        Parameters:
        instance - The instance to copy
        Returns:
        A copied immutable PaymentChannelFund instance
      • builder

        public static ImmutablePaymentChannelFund.Builder builder()
        Creates a builder for ImmutablePaymentChannelFund.
         ImmutablePaymentChannelFund.builder()
            .account(org.xrpl.xrpl4j.model.transactions.Address) // required account
            .fee(org.xrpl.xrpl4j.model.transactions.XrpCurrencyAmount) // required fee
            .sequence(com.google.common.primitives.UnsignedInteger) // required sequence
            .accountTransactionId(Hash256) // optional accountTransactionId
            .lastLedgerSequence(com.google.common.primitives.UnsignedInteger) // optional lastLedgerSequence
            .addMemos|addAllMemos(org.xrpl.xrpl4j.model.transactions.MemoWrapper) // memos elements
            .addSigners|addAllSigners(org.xrpl.xrpl4j.model.transactions.SignerWrapper) // signers elements
            .sourceTag(com.google.common.primitives.UnsignedInteger) // optional sourceTag
            .signingPublicKey(String) // optional signingPublicKey
            .transactionSignature(String) // optional transactionSignature
            .closeDate(com.google.common.primitives.UnsignedLong) // optional closeDate
            .hash(Hash256) // optional hash
            .ledgerIndex(org.xrpl.xrpl4j.model.client.common.LedgerIndex) // optional ledgerIndex
            .channel(org.xrpl.xrpl4j.model.transactions.Hash256) // required channel
            .amount(org.xrpl.xrpl4j.model.transactions.XrpCurrencyAmount) // required amount
            .expiration(com.google.common.primitives.UnsignedLong) // optional expiration
            .build();
         
        Returns:
        A new ImmutablePaymentChannelFund builder