Module com.hedera.hashgraph.sdk
Package com.hedera.hashgraph.sdk.proto
Class TokenAirdropTransactionBody
java.lang.Object
com.google.protobuf.AbstractMessageLite<TokenAirdropTransactionBody,TokenAirdropTransactionBody.Builder>
com.google.protobuf.GeneratedMessageLite<TokenAirdropTransactionBody,TokenAirdropTransactionBody.Builder>
com.hedera.hashgraph.sdk.proto.TokenAirdropTransactionBody
- All Implemented Interfaces:
com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,TokenAirdropTransactionBodyOrBuilder
@Generated
public final class TokenAirdropTransactionBody
extends com.google.protobuf.GeneratedMessageLite<TokenAirdropTransactionBody,TokenAirdropTransactionBody.Builder>
implements TokenAirdropTransactionBodyOrBuilder
* Airdrop one or more tokens to one or more accounts. ### Effects This distributes tokens from the balance of one or more sending account(s) to the balance of one or more recipient accounts. Accounts MAY receive the tokens in one of four ways. - An account already associated to the token to be distributed SHALL receive the airdropped tokens immediately to the recipient account balance.<br/> The fee for this transfer SHALL include the transfer, the airdrop fee, and any custom fees. - An account with available automatic association slots SHALL be automatically associated to the token, and SHALL immediately receive the airdropped tokens to the recipient account balance.<br/> The fee for this transfer SHALL include the transfer, the association, the cost to renew that association once, the airdrop fee, and any custom fees. - An account with "receiver signature required" set SHALL have a "Pending Airdrop" created and must claim that airdrop with a `claimAirdrop` transaction.<br/> The fee for this transfer SHALL include the transfer, the association, the cost to renew that association once, the airdrop fee, and any custom fees.<br/> If the pending airdrop is not claimed immediately, the `sender` SHALL pay the cost to renew the token association, and the cost to maintain the pending airdrop, until the pending airdrop is claimed or cancelled. - An account with no available automatic association slots SHALL have a "Pending Airdrop" created and must claim that airdrop with a `claimAirdrop` transaction.<br/> The fee for this transfer SHALL include the transfer, the association, the cost to renew that association once, the airdrop fee, and any custom fees.<br/> If the pending airdrop is not claimed immediately, the `sender` SHALL pay the cost to renew the token association, and the cost to maintain the pending airdrop, until the pending airdrop is claimed or cancelled. If an airdrop would create a pending airdrop for a fungible/common token, and a pending airdrop for the same sender, receiver, and token already exists, the existing pending airdrop SHALL be updated to add the new amount to the existing airdrop, rather than creating a new pending airdrop.<br/> Any airdrop that completes immediately SHALL be irreversible. Any airdrop that results in a "Pending Airdrop" MAY be canceled via a `cancelAirdrop` transaction.<br/> All transfer fees (including custom fees and royalties), as well as the rent cost for the first auto-renewal period for any automatic-association slot occupied by the airdropped tokens, SHALL be charged to the account paying for this transaction.<br/> ### Block Stream Effects - Each successful transfer SHALL be recorded in `token_transfer_list` for the transaction record. - Each successful transfer that consumes an automatic association slot SHALL populate the `automatic_association` field for the record. - Each pending transfer _created_ SHALL be added to the `pending_airdrops` field for the record. - Each pending transfer _updated_ SHALL be added to the `pending_airdrops` field for the record.Protobuf type
proto.TokenAirdropTransactionBody-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class* Airdrop one or more tokens to one or more accounts.Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageLite
com.google.protobuf.GeneratedMessageLite.DefaultInstanceBasedParser<T extends com.google.protobuf.GeneratedMessageLite<T,?>>, com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType, BuilderType>, BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType, BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType, BuilderType>, BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType, BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType, BuilderType>, BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType, BuilderType>>, com.google.protobuf.GeneratedMessageLite.GeneratedExtension<ContainingType extends com.google.protobuf.MessageLite, Type>, com.google.protobuf.GeneratedMessageLite.MethodToInvoke, com.google.protobuf.GeneratedMessageLite.SerializedForm Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsFields inherited from class com.google.protobuf.GeneratedMessageLite
unknownFieldsFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Method Summary
Modifier and TypeMethodDescriptionprotected final ObjectdynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1) static TokenAirdropTransactionBodygetTokenTransfers(int index) * A list of token transfers representing one or more airdrops.int* A list of token transfers representing one or more airdrops.* A list of token transfers representing one or more airdrops.getTokenTransfersOrBuilder(int index) * A list of token transfers representing one or more airdrops.List<? extends TokenTransferListOrBuilder> * A list of token transfers representing one or more airdrops.newBuilder(TokenAirdropTransactionBody prototype) static TokenAirdropTransactionBodyparseDelimitedFrom(InputStream input) static TokenAirdropTransactionBodyparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TokenAirdropTransactionBodyparseFrom(byte[] data) static TokenAirdropTransactionBodyparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TokenAirdropTransactionBodyparseFrom(com.google.protobuf.ByteString data) static TokenAirdropTransactionBodyparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TokenAirdropTransactionBodyparseFrom(com.google.protobuf.CodedInputStream input) static TokenAirdropTransactionBodyparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TokenAirdropTransactionBodyparseFrom(InputStream input) static TokenAirdropTransactionBodyparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TokenAirdropTransactionBodyparseFrom(ByteBuffer data) static TokenAirdropTransactionBodyparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<TokenAirdropTransactionBody> parser()Methods inherited from class com.google.protobuf.GeneratedMessageLite
createBuilder, createBuilder, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, emptyProtobufList, equals, getDefaultInstanceForType, getParserForType, getSerializedSize, hashCode, isInitialized, makeImmutable, mergeLengthDelimitedField, mergeUnknownFields, mergeVarintField, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBuilderForType, newMessageInfo, newRepeatedGeneratedExtension, newSingularGeneratedExtension, parseDelimitedFrom, parseDelimitedFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parsePartialFrom, parseUnknownField, registerDefaultInstance, toBuilder, toString, writeToMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.MessageLiteOrBuilder
getDefaultInstanceForType, isInitialized
-
Field Details
-
TOKEN_TRANSFERS_FIELD_NUMBER
public static final int TOKEN_TRANSFERS_FIELD_NUMBER- See Also:
-
-
Method Details
-
getTokenTransfersList
* A list of token transfers representing one or more airdrops. <p> The sender for each transfer MUST have sufficient balance to complete the transfers.<br/> All token transfers MUST successfully transfer tokens or create a pending airdrop for this transaction to succeed.<br/> This list MUST contain between 1 and 10 transfers, inclusive. <p> Note that each transfer of fungible/common tokens requires both a debit and a credit, so each _fungible_ token transfer MUST have _balanced_ entries in the TokenTransferList for that transfer.
repeated .proto.TokenTransferList token_transfers = 1;- Specified by:
getTokenTransfersListin interfaceTokenAirdropTransactionBodyOrBuilder
-
getTokenTransfersOrBuilderList
* A list of token transfers representing one or more airdrops. <p> The sender for each transfer MUST have sufficient balance to complete the transfers.<br/> All token transfers MUST successfully transfer tokens or create a pending airdrop for this transaction to succeed.<br/> This list MUST contain between 1 and 10 transfers, inclusive. <p> Note that each transfer of fungible/common tokens requires both a debit and a credit, so each _fungible_ token transfer MUST have _balanced_ entries in the TokenTransferList for that transfer.
repeated .proto.TokenTransferList token_transfers = 1; -
getTokenTransfersCount
public int getTokenTransfersCount()* A list of token transfers representing one or more airdrops. <p> The sender for each transfer MUST have sufficient balance to complete the transfers.<br/> All token transfers MUST successfully transfer tokens or create a pending airdrop for this transaction to succeed.<br/> This list MUST contain between 1 and 10 transfers, inclusive. <p> Note that each transfer of fungible/common tokens requires both a debit and a credit, so each _fungible_ token transfer MUST have _balanced_ entries in the TokenTransferList for that transfer.
repeated .proto.TokenTransferList token_transfers = 1;- Specified by:
getTokenTransfersCountin interfaceTokenAirdropTransactionBodyOrBuilder
-
getTokenTransfers
* A list of token transfers representing one or more airdrops. <p> The sender for each transfer MUST have sufficient balance to complete the transfers.<br/> All token transfers MUST successfully transfer tokens or create a pending airdrop for this transaction to succeed.<br/> This list MUST contain between 1 and 10 transfers, inclusive. <p> Note that each transfer of fungible/common tokens requires both a debit and a credit, so each _fungible_ token transfer MUST have _balanced_ entries in the TokenTransferList for that transfer.
repeated .proto.TokenTransferList token_transfers = 1;- Specified by:
getTokenTransfersin interfaceTokenAirdropTransactionBodyOrBuilder
-
getTokenTransfersOrBuilder
* A list of token transfers representing one or more airdrops. <p> The sender for each transfer MUST have sufficient balance to complete the transfers.<br/> All token transfers MUST successfully transfer tokens or create a pending airdrop for this transaction to succeed.<br/> This list MUST contain between 1 and 10 transfers, inclusive. <p> Note that each transfer of fungible/common tokens requires both a debit and a credit, so each _fungible_ token transfer MUST have _balanced_ entries in the TokenTransferList for that transfer.
repeated .proto.TokenTransferList token_transfers = 1; -
parseFrom
public static TokenAirdropTransactionBody parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static TokenAirdropTransactionBody parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static TokenAirdropTransactionBody parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilder
-
newBuilder
-
dynamicMethod
protected final Object dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1) - Specified by:
dynamicMethodin classcom.google.protobuf.GeneratedMessageLite<TokenAirdropTransactionBody,TokenAirdropTransactionBody.Builder>
-
getDefaultInstance
-
parser
-