Class TokenMintTransactionBody.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder<TokenMintTransactionBody,TokenMintTransactionBody.Builder>
com.google.protobuf.GeneratedMessageLite.Builder<TokenMintTransactionBody,TokenMintTransactionBody.Builder>
com.hedera.hashgraph.sdk.proto.TokenMintTransactionBody.Builder
All Implemented Interfaces:
com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, TokenMintTransactionBodyOrBuilder, Cloneable
Enclosing class:
TokenMintTransactionBody

public static final class TokenMintTransactionBody.Builder extends com.google.protobuf.GeneratedMessageLite.Builder<TokenMintTransactionBody,TokenMintTransactionBody.Builder> implements TokenMintTransactionBodyOrBuilder
 *
 Mint tokens and deliver the new tokens to the token treasury account.

 The token MUST have a `supply_key` set and that key MUST NOT
 be an empty `KeyList`.<br/>
 The token `supply_key` MUST sign this transaction.<br/>
 This operation SHALL increase the total supply for the token type by
 the number of tokens "minted".<br/>
 The total supply for the token type MUST NOT be increased above the
 maximum supply limit (2^63-1) by this transaction.<br/>
 The tokens minted SHALL be credited to the token treasury account.<br/>
 If the token is a fungible/common type, the amount MUST be specified.<br/>
 If the token is a non-fungible/unique type, the metadata bytes for each
 unique token MUST be specified in the `metadata` list.<br/>
 Each unique metadata MUST not exceed the global metadata size limit defined
 by the network configuration value `tokens.maxMetadataBytes`.<br/>
 The global batch size limit (`tokens.nfts.maxBatchSizeMint`) SHALL set
 the maximum number of individual NFT metadata permitted in a single
 `tokenMint` transaction.

 ### Block Stream Effects
 None
 
Protobuf type proto.TokenMintTransactionBody
  • Field Summary

    Fields inherited from class com.google.protobuf.GeneratedMessageLite.Builder

    instance
  • Method Summary

    Modifier and Type
    Method
    Description
    addAllMetadata(Iterable<? extends com.google.protobuf.ByteString> values)
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    addMetadata(com.google.protobuf.ByteString value)
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    * An amount to mint to the Treasury Account.
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    * A token identifier.
    long
    * An amount to mint to the Treasury Account.
    com.google.protobuf.ByteString
    getMetadata(int index)
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    int
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    List<com.google.protobuf.ByteString>
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    * A token identifier.
    boolean
    * A token identifier.
    * A token identifier.
    setAmount(long value)
    * An amount to mint to the Treasury Account.
    setMetadata(int index, com.google.protobuf.ByteString value)
    * A list of metadata bytes.<br/> <p> One non-fungible/unique token SHALL be minted for each entry in this list.<br/> Each entry in this list MUST NOT be larger than the limit set by the current network configuration value `tokens.maxMetadataBytes`.<br/> This list MUST NOT contain more entries than the current limit set by the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/> If this list is not empty, the token MUST be a non-fungible/unique type.<br/> If this list is empty, the token MUST be a fungible/common type.
    * A token identifier.
    setToken(TokenID.Builder builderForValue)
    * A token identifier.

    Methods inherited from class com.google.protobuf.GeneratedMessageLite.Builder

    build, buildPartial, clear, clone, copyOnWrite, copyOnWriteInternal, getDefaultInstanceForType, internalMergeFrom, isInitialized, mergeFrom, mergeFrom, mergeFrom, mergeFrom

    Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder

    addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    getDefaultInstanceForType, isInitialized
  • Method Details

    • hasToken

      public boolean hasToken()
       *
       A token identifier.
       <p>
       This SHALL identify the token type to "mint".<br/>
       The identified token MUST exist, and MUST NOT be deleted.
       
      .proto.TokenID token = 1;
      Specified by:
      hasToken in interface TokenMintTransactionBodyOrBuilder
      Returns:
      Whether the token field is set.
    • getToken

      public TokenID getToken()
       *
       A token identifier.
       <p>
       This SHALL identify the token type to "mint".<br/>
       The identified token MUST exist, and MUST NOT be deleted.
       
      .proto.TokenID token = 1;
      Specified by:
      getToken in interface TokenMintTransactionBodyOrBuilder
      Returns:
      The token.
    • setToken

      public TokenMintTransactionBody.Builder setToken(TokenID value)
       *
       A token identifier.
       <p>
       This SHALL identify the token type to "mint".<br/>
       The identified token MUST exist, and MUST NOT be deleted.
       
      .proto.TokenID token = 1;
    • setToken

      public TokenMintTransactionBody.Builder setToken(TokenID.Builder builderForValue)
       *
       A token identifier.
       <p>
       This SHALL identify the token type to "mint".<br/>
       The identified token MUST exist, and MUST NOT be deleted.
       
      .proto.TokenID token = 1;
    • mergeToken

      public TokenMintTransactionBody.Builder mergeToken(TokenID value)
       *
       A token identifier.
       <p>
       This SHALL identify the token type to "mint".<br/>
       The identified token MUST exist, and MUST NOT be deleted.
       
      .proto.TokenID token = 1;
    • clearToken

      public TokenMintTransactionBody.Builder clearToken()
       *
       A token identifier.
       <p>
       This SHALL identify the token type to "mint".<br/>
       The identified token MUST exist, and MUST NOT be deleted.
       
      .proto.TokenID token = 1;
    • getAmount

      public long getAmount()
       *
       An amount to mint to the Treasury Account.
       <p>
       This is interpreted as an amount in the smallest possible denomination
       for the token (10<sup>-decimals</sup> whole tokens).<br/>
       The balance for the token treasury account SHALL receive the newly
       minted tokens.<br/>
       If this value is equal to zero (`0`), the token SHOULD be a
       non-fungible/unique type.<br/>
       If this value is non-zero, the token MUST be a fungible/common type.
       
      uint64 amount = 2;
      Specified by:
      getAmount in interface TokenMintTransactionBodyOrBuilder
      Returns:
      The amount.
    • setAmount

      public TokenMintTransactionBody.Builder setAmount(long value)
       *
       An amount to mint to the Treasury Account.
       <p>
       This is interpreted as an amount in the smallest possible denomination
       for the token (10<sup>-decimals</sup> whole tokens).<br/>
       The balance for the token treasury account SHALL receive the newly
       minted tokens.<br/>
       If this value is equal to zero (`0`), the token SHOULD be a
       non-fungible/unique type.<br/>
       If this value is non-zero, the token MUST be a fungible/common type.
       
      uint64 amount = 2;
      Parameters:
      value - The amount to set.
      Returns:
      This builder for chaining.
    • clearAmount

      public TokenMintTransactionBody.Builder clearAmount()
       *
       An amount to mint to the Treasury Account.
       <p>
       This is interpreted as an amount in the smallest possible denomination
       for the token (10<sup>-decimals</sup> whole tokens).<br/>
       The balance for the token treasury account SHALL receive the newly
       minted tokens.<br/>
       If this value is equal to zero (`0`), the token SHOULD be a
       non-fungible/unique type.<br/>
       If this value is non-zero, the token MUST be a fungible/common type.
       
      uint64 amount = 2;
      Returns:
      This builder for chaining.
    • getMetadataList

      public List<com.google.protobuf.ByteString> getMetadataList()
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Specified by:
      getMetadataList in interface TokenMintTransactionBodyOrBuilder
      Returns:
      A list containing the metadata.
    • getMetadataCount

      public int getMetadataCount()
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Specified by:
      getMetadataCount in interface TokenMintTransactionBodyOrBuilder
      Returns:
      The count of metadata.
    • getMetadata

      public com.google.protobuf.ByteString getMetadata(int index)
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Specified by:
      getMetadata in interface TokenMintTransactionBodyOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The metadata at the given index.
    • setMetadata

      public TokenMintTransactionBody.Builder setMetadata(int index, com.google.protobuf.ByteString value)
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Parameters:
      value - The metadata to set.
      Returns:
      This builder for chaining.
    • addMetadata

      public TokenMintTransactionBody.Builder addMetadata(com.google.protobuf.ByteString value)
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Parameters:
      value - The metadata to add.
      Returns:
      This builder for chaining.
    • addAllMetadata

      public TokenMintTransactionBody.Builder addAllMetadata(Iterable<? extends com.google.protobuf.ByteString> values)
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Parameters:
      values - The metadata to add.
      Returns:
      This builder for chaining.
    • clearMetadata

      public TokenMintTransactionBody.Builder clearMetadata()
       *
       A list of metadata bytes.<br/>
       <p>
       One non-fungible/unique token SHALL be minted for each entry
       in this list.<br/>
       Each entry in this list MUST NOT be larger than the limit set by the
       current network configuration value `tokens.maxMetadataBytes`.<br/>
       This list MUST NOT contain more entries than the current limit set by
       the network configuration value `tokens.nfts.maxBatchSizeMint`.<br/>
       If this list is not empty, the token MUST be a
       non-fungible/unique type.<br/>
       If this list is empty, the token MUST be a fungible/common type.
       
      repeated bytes metadata = 3;
      Returns:
      This builder for chaining.