Class ImmutableMultiSignedTransaction<T extends Transaction>
java.lang.Object
org.xrpl.xrpl4j.crypto.core.signing.ImmutableMultiSignedTransaction<T>
- All Implemented Interfaces:
MultiSignedTransaction<T>
,SignedTransaction<T>
@ParametersAreNonnullByDefault
@Generated("org.immutables.processor.ProxyProcessor")
@Immutable
@CheckReturnValue
public final class ImmutableMultiSignedTransaction<T extends Transaction>
extends Object
implements MultiSignedTransaction<T>
Immutable implementation of
MultiSignedTransaction
.
Use the builder to create immutable instances:
ImmutableMultiSignedTransaction.builder()
.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
Builds instances of typeImmutableMultiSignedTransaction
. -
Method Summary
Modifier and TypeMethodDescriptionstatic <T extends Transaction>
ImmutableMultiSignedTransaction.Builder<T>builder()
Creates a builder forImmutableMultiSignedTransaction
.static <T extends Transaction>
ImmutableMultiSignedTransaction<T>copyOf
(MultiSignedTransaction<T> instance) Creates an immutable copy of aMultiSignedTransaction
value.boolean
This instance is equal to all instances ofImmutableMultiSignedTransaction
that have equal attribute values.hash()
The hash of theSignedTransaction.signedTransactionBytes()
which can be used as a handle to the transaction even though the transaction hasn't yet been submitted to the XRP Ledger.int
hashCode()
Computes a hash code from attributes:unsignedTransaction
,signedTransaction
,signedTransactionBytes
,signatureWithPublicKeySet
,hash
.com.google.common.collect.ImmutableSet<SignatureWithPublicKey>
The signature and public key used to sign.The transaction with a signature blob attached.ThesignedTransaction()
encoded into bytes that are suitable for submission to the XRP Ledger.toString()
Prints the immutable valueMultiSignedTransaction
with attribute values.The original transaction with no signature attached.final ImmutableMultiSignedTransaction<T>
withSignatureWithPublicKeySet
(Iterable<? extends SignatureWithPublicKey> elements) Copy the current immutable object with elements that replace the content ofsignatureWithPublicKeySet
.final ImmutableMultiSignedTransaction<T>
withSignatureWithPublicKeySet
(SignatureWithPublicKey... elements) Copy the current immutable object with elements that replace the content ofsignatureWithPublicKeySet
.final ImmutableMultiSignedTransaction<T>
withSignedTransaction
(T value) Copy the current immutable object by setting a value for thesignedTransaction
attribute.final ImmutableMultiSignedTransaction<T>
Copy the current immutable object by setting a value for thesignedTransactionBytes
attribute.final ImmutableMultiSignedTransaction<T>
withUnsignedTransaction
(T value) Copy the current immutable object by setting a value for theunsignedTransaction
attribute.
-
Method Details
-
unsignedTransaction
The original transaction with no signature attached.- Specified by:
unsignedTransaction
in interfaceSignedTransaction<T extends Transaction>
- Returns:
- A
Transaction
.
-
signedTransaction
The transaction with a signature blob attached.- Specified by:
signedTransaction
in interfaceSignedTransaction<T extends Transaction>
- Returns:
- A
Transaction
.
-
signedTransactionBytes
ThesignedTransaction()
encoded into bytes that are suitable for submission to the XRP Ledger.- Specified by:
signedTransactionBytes
in interfaceSignedTransaction<T extends Transaction>
- Returns:
- A byte-array containing the signed transaction blob.
-
signatureWithPublicKeySet
The signature and public key used to sign.- Specified by:
signatureWithPublicKeySet
in interfaceMultiSignedTransaction<T extends Transaction>
- Returns:
- A byte-array.
-
hash
Description copied from interface:SignedTransaction
The hash of theSignedTransaction.signedTransactionBytes()
which can be used as a handle to the transaction even though the transaction hasn't yet been submitted to the XRP Ledger. This field is derived by computing the SHA512-Half of the Signed Transaction hash prefix concatenated withSignedTransaction.signedTransactionBytes()
.- Specified by:
hash
in interfaceMultiSignedTransaction<T extends Transaction>
- Specified by:
hash
in interfaceSignedTransaction<T extends Transaction>
- Returns:
- The computed-at-construction value of the
hash
attribute
-
withUnsignedTransaction
Copy the current immutable object by setting a value for theunsignedTransaction
attribute. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for unsignedTransaction- Returns:
- A modified copy of the
this
object
-
withSignedTransaction
Copy the current immutable object by setting a value for thesignedTransaction
attribute. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for signedTransaction- Returns:
- A modified copy of the
this
object
-
withSignedTransactionBytes
Copy the current immutable object by setting a value for thesignedTransactionBytes
attribute. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for signedTransactionBytes- Returns:
- A modified copy of the
this
object
-
withSignatureWithPublicKeySet
public final ImmutableMultiSignedTransaction<T> withSignatureWithPublicKeySet(SignatureWithPublicKey... elements) Copy the current immutable object with elements that replace the content ofsignatureWithPublicKeySet
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withSignatureWithPublicKeySet
public final ImmutableMultiSignedTransaction<T> withSignatureWithPublicKeySet(Iterable<? extends SignatureWithPublicKey> elements) Copy the current immutable object with elements that replace the content ofsignatureWithPublicKeySet
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of signatureWithPublicKeySet elements to set- Returns:
- A modified copy of
this
object
-
equals
This instance is equal to all instances ofImmutableMultiSignedTransaction
that have equal attribute values. -
hashCode
public int hashCode()Computes a hash code from attributes:unsignedTransaction
,signedTransaction
,signedTransactionBytes
,signatureWithPublicKeySet
,hash
. -
toString
Prints the immutable valueMultiSignedTransaction
with attribute values. -
copyOf
public static <T extends Transaction> ImmutableMultiSignedTransaction<T> copyOf(MultiSignedTransaction<T> instance) Creates an immutable copy of aMultiSignedTransaction
value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Type Parameters:
T
- generic parameter T- Parameters:
instance
- The instance to copy- Returns:
- A copied immutable MultiSignedTransaction instance
-
builder
Creates a builder forImmutableMultiSignedTransaction
.ImmutableMultiSignedTransaction.<T>builder() .unsignedTransaction(T) // required
unsignedTransaction
.signedTransaction(T) // requiredsignedTransaction
.signedTransactionBytes(org.xrpl.xrpl4j.codec.addresses.UnsignedByteArray) // requiredsignedTransactionBytes
.addSignatureWithPublicKeySet|addAllSignatureWithPublicKeySet(org.xrpl.xrpl4j.crypto.core.signing.SignatureWithPublicKey) //signatureWithPublicKeySet
elements .build();- Type Parameters:
T
- generic parameter T- Returns:
- A new ImmutableMultiSignedTransaction builder
-