TransactionID class
The ID for a transaction. This is used for retrieving receipts and records for a transaction, for appending to a file right after creating it, for instantiating a smart contract with bytecode in a file just created, and internally by the network for detecting when duplicate transactions are submitted. A user might get a transaction processed faster by submitting it to N nodes, each with a different node account, but all with the same TransactionID. Then, the transaction will take effect when the first of all those nodes submits the transaction and it reaches consensus. The other transactions will not take effect. So this could make the transaction take effect faster, if any given node might be slow. However, the full transaction fee is charged for each transaction, so the total fee is N times as much if the transaction is sent to N nodes.
Applicable to Scheduled Transactions:
- The ID of a Scheduled Transaction has transactionValidStart and accountIDs inherited from the ScheduleCreate transaction that created it. That is to say that they are equal
- The scheduled property is true for Scheduled Transactions
- transactionValidStart, accountID and scheduled properties should be omitted
- Inheritance
-
- Object
- GeneratedMessage
- TransactionID
- Available extensions
Constructors
- TransactionID.new({Timestamp? transactionValidStart, String? accountID, bool? scheduled, int? nonce})
-
factory
-
TransactionID.fromBuffer(List<
int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) -
factory
- TransactionID.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
-
factory
Properties
- accountID ↔ String
-
The Account ID that paid for this transaction
getter/setter pair
- eventPlugin → EventPlugin?
-
Subclasses can override this getter to be notified of changes
to protobuf fields.
no setterinherited
- hashCode → int
-
Calculates a hash code based on the contents of the protobuf.
no setterinherited
- info_ → BuilderInfo
-
no setteroverride
- isFrozen → bool
-
Returns
true
if this message is marked read-only. Otherwisefalse
.no setterinherited - nonce ↔ int
-
The identifier for an internal transaction that was spawned as part
of handling a user transaction. (These internal transactions share the
transactionValidStart and accountID of the user transaction, so a
nonce is necessary to give them a unique TransactionID.)
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scheduled ↔ bool
-
Whether the Transaction is of type Scheduled or no
getter/setter pair
- transactionValidStart ↔ Timestamp
-
The transaction is invalid if consensusTimestamp < transactionID.transactionStartValid
getter/setter pair
- unknownFields → UnknownFieldSet
-
no setterinherited
Methods
-
addExtension(
Extension extension, Object? value) → void -
Adds an extension field value to a repeated field.
inherited
-
anyCompileWithSignatures(
{required TWCoinType coin, required List< Uint8List> signatures, required List<Uint8List> publicKeys, TWPublicKeyType? pubKeyType}) → Uint8List -
Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension
Compiles a complete transation with one or more external signatures. \paramcoin
coin type. \paramsignatures
signatures to compile. \parampublicKeys
public keys for signers to match private keys. \parampubKeyType
public key type. \return serialized data of a proto objectSigningOutput
. -
anyCompileWithSignaturesToOutput<
T extends GeneratedMessage> ({required TWCoinType coin, required List< Uint8List> signatures, required List<Uint8List> publicKeys, TWPublicKeyType? pubKeyType, required T output}) → T -
Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension
Compiles a complete transation with one or more external signatures. \paramcoin
coin type. \paramsignatures
signatures to compile. \parampublicKeys
public keys for signers to match private keys. \parampublicKeys
public keys for signers to match private keys. \parampubKeyType
public key type. \paramoutput
EmptySigningOutput
proto object. \returnoutput
after serialization data is filled. -
anyPlan(
TWCoinType coin) → Uint8List -
Available on GeneratedMessage, provided by the TWAnySignExtension extension
Any plan. \paramcoin
coin type. \return The serialized data of aTransactionPlan
proto object. -
anyPlanToOutput<
T extends GeneratedMessage> (TWCoinType coin, T output) → T -
Available on GeneratedMessage, provided by the TWAnySignExtension extension
Any plan to output. \paramcoin
coin type. \paramoutput
EmptyTransactionPlan
proto object. \returnoutput
after serialization data is filled. -
anyPreImageHashes(
TWCoinType coin) → Uint8List -
Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension
Obtain pre-signing hashes of a transaction. \paramcoin
coin type. \return serialized data of a proto objectPreSigningOutput
includes hash. -
anyPreImageHashesToOutput<
T extends GeneratedMessage> (TWCoinType coin, T output) → T -
Available on GeneratedMessage, provided by the TWPreImageHashesExtension extension
Obtain pre-signing hashes of a transaction. \paramcoin
coin type. \paramoutput
EmptyPreSigningOutput
proto object. \returnoutput
after serialization data is filled. -
anySign(
TWCoinType coin) → Uint8List -
Available on GeneratedMessage, provided by the TWAnySignExtension extension
Any sign. \paramcoin
The given coin type to sign the transaction for. \return The serialized data of aSigningOutput
proto object. (e.g. TW.Bitcoin.Proto.SigningOutput). -
anySignToOutput<
T extends GeneratedMessage> (TWCoinType coin, T output) → T -
Available on GeneratedMessage, provided by the TWAnySignExtension extension
Any sign to output. \paramcoin
coin type. \paramoutput
EmptySigningOutput
proto object. (e.g. TW.Bitcoin.Proto.SigningOutput). \returnoutput
after serialization data is filled. -
check(
) → void -
inherited
-
clear(
) → void -
Clears all data that was set in this message.
inherited
-
clearAccountID(
) → void -
clearExtension(
Extension extension) → void -
Clears an extension field and also removes the extension.
inherited
-
clearField(
int tagNumber) → void -
Clears the contents of a given field.
inherited
-
clearNonce(
) → void -
clearScheduled(
) → void -
clearTransactionValidStart(
) → void -
clone(
) → TransactionID -
Creates a deep copy of the fields in this message.
(The generated code uses mergeFromMessage.)
override
-
copyWith(
void updates(TransactionID)) → TransactionID -
Apply
updates
to a copy of this message.override -
createEmptyInstance(
) → TransactionID -
Creates an empty instance of the same message type as this.
override
-
createMapField<
K, V> (int tagNumber, MapFieldInfo< K, V> fi) → Map<K, V> -
Creates a Map representing a map field.
inherited
-
createRepeatedField<
T> (int tagNumber, FieldInfo< T> fi) → List<T> -
Creates List implementing a mutable repeated field.
inherited
-
ensureTransactionValidStart(
) → Timestamp -
extensionsAreInitialized(
) → bool -
inherited
-
freeze(
) → GeneratedMessage -
Make this message read-only.
inherited
-
getDefaultForField(
int tagNumber) → dynamic -
Returns the default value for the given field.
inherited
-
getExtension(
Extension extension) → dynamic -
Returns the value of
extension
.inherited -
getField(
int tagNumber) → dynamic -
Returns the value of the field associated with
tagNumber
, or the default value if it is not set.inherited -
getFieldOrNull(
int tagNumber) → dynamic -
Returns the value of a field, ignoring any defaults.
inherited
-
getTagNumber(
String fieldName) → int? -
inherited
-
hasAccountID(
) → bool -
hasExtension(
Extension extension) → bool -
Returns
true
if a value ofextension
is present.inherited -
hasField(
int tagNumber) → bool -
Whether this message has a field associated with
tagNumber
.inherited -
hasNonce(
) → bool -
hasRequiredFields(
) → bool -
Whether the message has required fields.
inherited
-
hasScheduled(
) → bool -
hasTransactionValidStart(
) → bool -
isInitialized(
) → bool -
Whether all required fields in the message and embedded messages are set.
inherited
-
mergeFromBuffer(
List< int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Merges serialized protocol buffer data into this message.
inherited
-
mergeFromCodedBufferReader(
CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
inherited
-
mergeFromJson(
String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Merges field values from
data
, a JSON object, encoded as described byGeneratedMessage.writeToJson
.inherited -
mergeFromJsonMap(
Map< String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void -
Merges field values from a JSON object represented as a Dart map.
inherited
-
mergeFromMessage(
GeneratedMessage other) → void -
Merges the contents of the
other
into this message.inherited -
mergeFromProto3Json(
Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) → void -
Merges field values from
json
, a JSON object using proto3 encoding.inherited -
mergeUnknownFields(
UnknownFieldSet unknownFieldSet) → void -
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
setExtension(
Extension extension, Object value) → void -
Sets the value of a non-repeated extension field to
value
.inherited -
setField(
int tagNumber, Object value) → void -
Sets the value of a field by its
tagNumber
.inherited -
toBuilder(
) → GeneratedMessage -
Creates a writable, shallow copy of this message.
inherited
-
toDebugString(
) → String -
Returns a String representation of this message.
inherited
-
toProto3Json(
{TypeRegistry typeRegistry = const TypeRegistry.empty()}) → Object? -
Returns an Object representing Proto3 JSON serialization of
this
.inherited -
toString(
) → String -
Returns a String representation of this message.
inherited
-
writeToBuffer(
) → Uint8List -
inherited
-
writeToCodedBufferWriter(
CodedBufferWriter output) → void -
inherited
-
writeToJson(
) → String -
Returns a JSON string that encodes this message.
inherited
-
writeToJsonMap(
) → Map< String, dynamic> -
Returns the JSON encoding of this message as a Dart Map.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
create(
) → TransactionID -
createRepeated(
) → PbList< TransactionID> -
getDefault(
) → TransactionID