Class TokenUpdateTransactionBody.Builder

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

public static final class TokenUpdateTransactionBody.Builder extends com.google.protobuf.GeneratedMessageLite.Builder<TokenUpdateTransactionBody,TokenUpdateTransactionBody.Builder> implements TokenUpdateTransactionBodyOrBuilder
 *
 Update an existing token.

 This transaction SHALL NOT update any field that is not set.<br/>
 Most changes MUST be signed by the current `admin_key` of the token. If the
 token does not currently have a valid `admin_key`, then this transaction
 MUST NOT set any value other than `expiry` or a non-admin key.<br/>
 If the `treasury` is set to a new account, the new account MUST sign this
 transaction.<br/>
 If the `treasury` is set to a new account for a _non-fungible/unique_ token,
 The current treasury MAY hold some tokens.

 #### Requirements for Keys
 Any of the key values may be changed, even without an admin key, but the
 key to be changed MUST have an existing valid key assigned, and both the
 current key and the new key MUST sign the transaction.<br/>
 A key value MAY be set to an empty `KeyList`. In this case the existing
 key MUST sign this transaction, but the new value is not a valid key, and the
 update SHALL effectively remove the existing key.

 ### Block Stream Effects
 None
 
Protobuf type proto.TokenUpdateTransactionBody
  • Method Details

    • hasToken

      public boolean hasToken()
       *
       A token identifier.
       <p>
       This SHALL identify the token type to delete.<br/>
       The identified token MUST exist, and MUST NOT be deleted.<br/>
       If any field other than `expiry` is set, the identified token MUST
       have a valid `admin_key`.
       
      .proto.TokenID token = 1;
      Specified by:
      hasToken in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the token field is set.
    • getToken

      public TokenID getToken()
       *
       A token identifier.
       <p>
       This SHALL identify the token type to delete.<br/>
       The identified token MUST exist, and MUST NOT be deleted.<br/>
       If any field other than `expiry` is set, the identified token MUST
       have a valid `admin_key`.
       
      .proto.TokenID token = 1;
      Specified by:
      getToken in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The token.
    • setToken

       *
       A token identifier.
       <p>
       This SHALL identify the token type to delete.<br/>
       The identified token MUST exist, and MUST NOT be deleted.<br/>
       If any field other than `expiry` is set, the identified token MUST
       have a valid `admin_key`.
       
      .proto.TokenID token = 1;
    • setToken

      public TokenUpdateTransactionBody.Builder setToken(TokenID.Builder builderForValue)
       *
       A token identifier.
       <p>
       This SHALL identify the token type to delete.<br/>
       The identified token MUST exist, and MUST NOT be deleted.<br/>
       If any field other than `expiry` is set, the identified token MUST
       have a valid `admin_key`.
       
      .proto.TokenID token = 1;
    • mergeToken

      public TokenUpdateTransactionBody.Builder mergeToken(TokenID value)
       *
       A token identifier.
       <p>
       This SHALL identify the token type to delete.<br/>
       The identified token MUST exist, and MUST NOT be deleted.<br/>
       If any field other than `expiry` is set, the identified token MUST
       have a valid `admin_key`.
       
      .proto.TokenID token = 1;
    • clearToken

       *
       A token identifier.
       <p>
       This SHALL identify the token type to delete.<br/>
       The identified token MUST exist, and MUST NOT be deleted.<br/>
       If any field other than `expiry` is set, the identified token MUST
       have a valid `admin_key`.
       
      .proto.TokenID token = 1;
    • getSymbol

      public String getSymbol()
       *
       A new symbol to use for the token.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string symbol = 2;
      Specified by:
      getSymbol in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The symbol.
    • getSymbolBytes

      public com.google.protobuf.ByteString getSymbolBytes()
       *
       A new symbol to use for the token.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string symbol = 2;
      Specified by:
      getSymbolBytes in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The bytes for symbol.
    • setSymbol

      public TokenUpdateTransactionBody.Builder setSymbol(String value)
       *
       A new symbol to use for the token.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string symbol = 2;
      Parameters:
      value - The symbol to set.
      Returns:
      This builder for chaining.
    • clearSymbol

      public TokenUpdateTransactionBody.Builder clearSymbol()
       *
       A new symbol to use for the token.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string symbol = 2;
      Returns:
      This builder for chaining.
    • setSymbolBytes

      public TokenUpdateTransactionBody.Builder setSymbolBytes(com.google.protobuf.ByteString value)
       *
       A new symbol to use for the token.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string symbol = 2;
      Parameters:
      value - The bytes for symbol to set.
      Returns:
      This builder for chaining.
    • getName

      public String getName()
       *
       A new name for the token.<br/>
       This is generally the "full name" displayed in wallet software.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string name = 3;
      Specified by:
      getName in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The name.
    • getNameBytes

      public com.google.protobuf.ByteString getNameBytes()
       *
       A new name for the token.<br/>
       This is generally the "full name" displayed in wallet software.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string name = 3;
      Specified by:
      getNameBytes in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The bytes for name.
    • setName

       *
       A new name for the token.<br/>
       This is generally the "full name" displayed in wallet software.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string name = 3;
      Parameters:
      value - The name to set.
      Returns:
      This builder for chaining.
    • clearName

       *
       A new name for the token.<br/>
       This is generally the "full name" displayed in wallet software.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string name = 3;
      Returns:
      This builder for chaining.
    • setNameBytes

      public TokenUpdateTransactionBody.Builder setNameBytes(com.google.protobuf.ByteString value)
       *
       A new name for the token.<br/>
       This is generally the "full name" displayed in wallet software.
       <p>
       This value, if set, MUST NOT exceed 100 bytes when encoded as UTF-8.<br/>
       This value, if set, MUST NOT contain the Unicode NUL codepoint.
       
      string name = 3;
      Parameters:
      value - The bytes for name to set.
      Returns:
      This builder for chaining.
    • hasTreasury

      public boolean hasTreasury()
       *
       A new treasury account identifier.
       <p>
       If set,
       - The identified account SHALL be designated the "treasury" for the
       token, and all tokens "minted" SHALL be delivered to that account
       following this transaction.<br/>
       - The identified account MUST exist, MUST NOT be expired, MUST NOT be
       deleted, and SHOULD have a non-zero HBAR balance.<br/>
       - The identified account SHALL be associated to this token.
       - The full balance of this token held by the prior treasury account
       SHALL be transferred to the new treasury account, if the token type
       is fungible/common.
       - If the token type is non-fungible/unique, the previous treasury
       account MUST NOT hold any tokens of this type.
       - The new treasury account key MUST sign this transaction.
       
      .proto.AccountID treasury = 4;
      Specified by:
      hasTreasury in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the treasury field is set.
    • getTreasury

      public AccountID getTreasury()
       *
       A new treasury account identifier.
       <p>
       If set,
       - The identified account SHALL be designated the "treasury" for the
       token, and all tokens "minted" SHALL be delivered to that account
       following this transaction.<br/>
       - The identified account MUST exist, MUST NOT be expired, MUST NOT be
       deleted, and SHOULD have a non-zero HBAR balance.<br/>
       - The identified account SHALL be associated to this token.
       - The full balance of this token held by the prior treasury account
       SHALL be transferred to the new treasury account, if the token type
       is fungible/common.
       - If the token type is non-fungible/unique, the previous treasury
       account MUST NOT hold any tokens of this type.
       - The new treasury account key MUST sign this transaction.
       
      .proto.AccountID treasury = 4;
      Specified by:
      getTreasury in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The treasury.
    • setTreasury

      public TokenUpdateTransactionBody.Builder setTreasury(AccountID value)
       *
       A new treasury account identifier.
       <p>
       If set,
       - The identified account SHALL be designated the "treasury" for the
       token, and all tokens "minted" SHALL be delivered to that account
       following this transaction.<br/>
       - The identified account MUST exist, MUST NOT be expired, MUST NOT be
       deleted, and SHOULD have a non-zero HBAR balance.<br/>
       - The identified account SHALL be associated to this token.
       - The full balance of this token held by the prior treasury account
       SHALL be transferred to the new treasury account, if the token type
       is fungible/common.
       - If the token type is non-fungible/unique, the previous treasury
       account MUST NOT hold any tokens of this type.
       - The new treasury account key MUST sign this transaction.
       
      .proto.AccountID treasury = 4;
    • setTreasury

      public TokenUpdateTransactionBody.Builder setTreasury(AccountID.Builder builderForValue)
       *
       A new treasury account identifier.
       <p>
       If set,
       - The identified account SHALL be designated the "treasury" for the
       token, and all tokens "minted" SHALL be delivered to that account
       following this transaction.<br/>
       - The identified account MUST exist, MUST NOT be expired, MUST NOT be
       deleted, and SHOULD have a non-zero HBAR balance.<br/>
       - The identified account SHALL be associated to this token.
       - The full balance of this token held by the prior treasury account
       SHALL be transferred to the new treasury account, if the token type
       is fungible/common.
       - If the token type is non-fungible/unique, the previous treasury
       account MUST NOT hold any tokens of this type.
       - The new treasury account key MUST sign this transaction.
       
      .proto.AccountID treasury = 4;
    • mergeTreasury

      public TokenUpdateTransactionBody.Builder mergeTreasury(AccountID value)
       *
       A new treasury account identifier.
       <p>
       If set,
       - The identified account SHALL be designated the "treasury" for the
       token, and all tokens "minted" SHALL be delivered to that account
       following this transaction.<br/>
       - The identified account MUST exist, MUST NOT be expired, MUST NOT be
       deleted, and SHOULD have a non-zero HBAR balance.<br/>
       - The identified account SHALL be associated to this token.
       - The full balance of this token held by the prior treasury account
       SHALL be transferred to the new treasury account, if the token type
       is fungible/common.
       - If the token type is non-fungible/unique, the previous treasury
       account MUST NOT hold any tokens of this type.
       - The new treasury account key MUST sign this transaction.
       
      .proto.AccountID treasury = 4;
    • clearTreasury

      public TokenUpdateTransactionBody.Builder clearTreasury()
       *
       A new treasury account identifier.
       <p>
       If set,
       - The identified account SHALL be designated the "treasury" for the
       token, and all tokens "minted" SHALL be delivered to that account
       following this transaction.<br/>
       - The identified account MUST exist, MUST NOT be expired, MUST NOT be
       deleted, and SHOULD have a non-zero HBAR balance.<br/>
       - The identified account SHALL be associated to this token.
       - The full balance of this token held by the prior treasury account
       SHALL be transferred to the new treasury account, if the token type
       is fungible/common.
       - If the token type is non-fungible/unique, the previous treasury
       account MUST NOT hold any tokens of this type.
       - The new treasury account key MUST sign this transaction.
       
      .proto.AccountID treasury = 4;
    • hasAdminKey

      public boolean hasAdminKey()
       *
       An Hedera key for token administration.
       <p>
       This key, if set, SHALL have administrative authority for this token and
       MAY authorize token update and/or token delete transactions.<br/>
       If this key is set to an empty `KeyList`, this token SHALL be
       immutable thereafter, except for expiration and renewal.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key adminKey = 5;
      Specified by:
      hasAdminKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the adminKey field is set.
    • getAdminKey

      public Key getAdminKey()
       *
       An Hedera key for token administration.
       <p>
       This key, if set, SHALL have administrative authority for this token and
       MAY authorize token update and/or token delete transactions.<br/>
       If this key is set to an empty `KeyList`, this token SHALL be
       immutable thereafter, except for expiration and renewal.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key adminKey = 5;
      Specified by:
      getAdminKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The adminKey.
    • setAdminKey

      public TokenUpdateTransactionBody.Builder setAdminKey(Key value)
       *
       An Hedera key for token administration.
       <p>
       This key, if set, SHALL have administrative authority for this token and
       MAY authorize token update and/or token delete transactions.<br/>
       If this key is set to an empty `KeyList`, this token SHALL be
       immutable thereafter, except for expiration and renewal.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key adminKey = 5;
    • setAdminKey

      public TokenUpdateTransactionBody.Builder setAdminKey(Key.Builder builderForValue)
       *
       An Hedera key for token administration.
       <p>
       This key, if set, SHALL have administrative authority for this token and
       MAY authorize token update and/or token delete transactions.<br/>
       If this key is set to an empty `KeyList`, this token SHALL be
       immutable thereafter, except for expiration and renewal.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key adminKey = 5;
    • mergeAdminKey

      public TokenUpdateTransactionBody.Builder mergeAdminKey(Key value)
       *
       An Hedera key for token administration.
       <p>
       This key, if set, SHALL have administrative authority for this token and
       MAY authorize token update and/or token delete transactions.<br/>
       If this key is set to an empty `KeyList`, this token SHALL be
       immutable thereafter, except for expiration and renewal.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key adminKey = 5;
    • clearAdminKey

      public TokenUpdateTransactionBody.Builder clearAdminKey()
       *
       An Hedera key for token administration.
       <p>
       This key, if set, SHALL have administrative authority for this token and
       MAY authorize token update and/or token delete transactions.<br/>
       If this key is set to an empty `KeyList`, this token SHALL be
       immutable thereafter, except for expiration and renewal.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key adminKey = 5;
    • hasKycKey

      public boolean hasKycKey()
       *
       An Hedera key for managing account KYC.
       <p>
       This key, if set, SHALL have KYC authority for this token and
       MAY authorize transactions to grant or revoke KYC for accounts.<br/>
       If this key is not set, or is an empty `KeyList`, KYC status for this
       token SHALL NOT be granted or revoked for any account.<br/>
       If this key is removed after granting KYC, those grants SHALL remain
       and cannot be revoked.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key kycKey = 6;
      Specified by:
      hasKycKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the kycKey field is set.
    • getKycKey

      public Key getKycKey()
       *
       An Hedera key for managing account KYC.
       <p>
       This key, if set, SHALL have KYC authority for this token and
       MAY authorize transactions to grant or revoke KYC for accounts.<br/>
       If this key is not set, or is an empty `KeyList`, KYC status for this
       token SHALL NOT be granted or revoked for any account.<br/>
       If this key is removed after granting KYC, those grants SHALL remain
       and cannot be revoked.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key kycKey = 6;
      Specified by:
      getKycKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The kycKey.
    • setKycKey

      public TokenUpdateTransactionBody.Builder setKycKey(Key value)
       *
       An Hedera key for managing account KYC.
       <p>
       This key, if set, SHALL have KYC authority for this token and
       MAY authorize transactions to grant or revoke KYC for accounts.<br/>
       If this key is not set, or is an empty `KeyList`, KYC status for this
       token SHALL NOT be granted or revoked for any account.<br/>
       If this key is removed after granting KYC, those grants SHALL remain
       and cannot be revoked.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key kycKey = 6;
    • setKycKey

      public TokenUpdateTransactionBody.Builder setKycKey(Key.Builder builderForValue)
       *
       An Hedera key for managing account KYC.
       <p>
       This key, if set, SHALL have KYC authority for this token and
       MAY authorize transactions to grant or revoke KYC for accounts.<br/>
       If this key is not set, or is an empty `KeyList`, KYC status for this
       token SHALL NOT be granted or revoked for any account.<br/>
       If this key is removed after granting KYC, those grants SHALL remain
       and cannot be revoked.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key kycKey = 6;
    • mergeKycKey

      public TokenUpdateTransactionBody.Builder mergeKycKey(Key value)
       *
       An Hedera key for managing account KYC.
       <p>
       This key, if set, SHALL have KYC authority for this token and
       MAY authorize transactions to grant or revoke KYC for accounts.<br/>
       If this key is not set, or is an empty `KeyList`, KYC status for this
       token SHALL NOT be granted or revoked for any account.<br/>
       If this key is removed after granting KYC, those grants SHALL remain
       and cannot be revoked.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key kycKey = 6;
    • clearKycKey

      public TokenUpdateTransactionBody.Builder clearKycKey()
       *
       An Hedera key for managing account KYC.
       <p>
       This key, if set, SHALL have KYC authority for this token and
       MAY authorize transactions to grant or revoke KYC for accounts.<br/>
       If this key is not set, or is an empty `KeyList`, KYC status for this
       token SHALL NOT be granted or revoked for any account.<br/>
       If this key is removed after granting KYC, those grants SHALL remain
       and cannot be revoked.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key kycKey = 6;
    • hasFreezeKey

      public boolean hasFreezeKey()
       *
       An Hedera key for managing asset "freeze".
       <p>
       This key, if set, SHALL have "freeze" authority for this token and
       MAY authorize transactions to freeze or unfreeze accounts
       with respect to this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be frozen or unfrozen for any account.<br/>
       If this key is removed after freezing accounts, those accounts
       SHALL remain frozen and cannot be unfrozen.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key freezeKey = 7;
      Specified by:
      hasFreezeKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the freezeKey field is set.
    • getFreezeKey

      public Key getFreezeKey()
       *
       An Hedera key for managing asset "freeze".
       <p>
       This key, if set, SHALL have "freeze" authority for this token and
       MAY authorize transactions to freeze or unfreeze accounts
       with respect to this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be frozen or unfrozen for any account.<br/>
       If this key is removed after freezing accounts, those accounts
       SHALL remain frozen and cannot be unfrozen.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key freezeKey = 7;
      Specified by:
      getFreezeKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The freezeKey.
    • setFreezeKey

      public TokenUpdateTransactionBody.Builder setFreezeKey(Key value)
       *
       An Hedera key for managing asset "freeze".
       <p>
       This key, if set, SHALL have "freeze" authority for this token and
       MAY authorize transactions to freeze or unfreeze accounts
       with respect to this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be frozen or unfrozen for any account.<br/>
       If this key is removed after freezing accounts, those accounts
       SHALL remain frozen and cannot be unfrozen.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key freezeKey = 7;
    • setFreezeKey

      public TokenUpdateTransactionBody.Builder setFreezeKey(Key.Builder builderForValue)
       *
       An Hedera key for managing asset "freeze".
       <p>
       This key, if set, SHALL have "freeze" authority for this token and
       MAY authorize transactions to freeze or unfreeze accounts
       with respect to this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be frozen or unfrozen for any account.<br/>
       If this key is removed after freezing accounts, those accounts
       SHALL remain frozen and cannot be unfrozen.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key freezeKey = 7;
    • mergeFreezeKey

      public TokenUpdateTransactionBody.Builder mergeFreezeKey(Key value)
       *
       An Hedera key for managing asset "freeze".
       <p>
       This key, if set, SHALL have "freeze" authority for this token and
       MAY authorize transactions to freeze or unfreeze accounts
       with respect to this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be frozen or unfrozen for any account.<br/>
       If this key is removed after freezing accounts, those accounts
       SHALL remain frozen and cannot be unfrozen.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key freezeKey = 7;
    • clearFreezeKey

      public TokenUpdateTransactionBody.Builder clearFreezeKey()
       *
       An Hedera key for managing asset "freeze".
       <p>
       This key, if set, SHALL have "freeze" authority for this token and
       MAY authorize transactions to freeze or unfreeze accounts
       with respect to this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be frozen or unfrozen for any account.<br/>
       If this key is removed after freezing accounts, those accounts
       SHALL remain frozen and cannot be unfrozen.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key freezeKey = 7;
    • hasWipeKey

      public boolean hasWipeKey()
       *
       An Hedera key for wiping tokens from accounts.
       <p>
       This key, if set, SHALL have "wipe" authority for this token and
       MAY authorize transactions to "wipe" any amount of this token from
       any account, effectively burning the tokens "wiped".<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to "wipe" this token from an account.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key wipeKey = 8;
      Specified by:
      hasWipeKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the wipeKey field is set.
    • getWipeKey

      public Key getWipeKey()
       *
       An Hedera key for wiping tokens from accounts.
       <p>
       This key, if set, SHALL have "wipe" authority for this token and
       MAY authorize transactions to "wipe" any amount of this token from
       any account, effectively burning the tokens "wiped".<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to "wipe" this token from an account.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key wipeKey = 8;
      Specified by:
      getWipeKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The wipeKey.
    • setWipeKey

      public TokenUpdateTransactionBody.Builder setWipeKey(Key value)
       *
       An Hedera key for wiping tokens from accounts.
       <p>
       This key, if set, SHALL have "wipe" authority for this token and
       MAY authorize transactions to "wipe" any amount of this token from
       any account, effectively burning the tokens "wiped".<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to "wipe" this token from an account.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key wipeKey = 8;
    • setWipeKey

      public TokenUpdateTransactionBody.Builder setWipeKey(Key.Builder builderForValue)
       *
       An Hedera key for wiping tokens from accounts.
       <p>
       This key, if set, SHALL have "wipe" authority for this token and
       MAY authorize transactions to "wipe" any amount of this token from
       any account, effectively burning the tokens "wiped".<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to "wipe" this token from an account.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key wipeKey = 8;
    • mergeWipeKey

      public TokenUpdateTransactionBody.Builder mergeWipeKey(Key value)
       *
       An Hedera key for wiping tokens from accounts.
       <p>
       This key, if set, SHALL have "wipe" authority for this token and
       MAY authorize transactions to "wipe" any amount of this token from
       any account, effectively burning the tokens "wiped".<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to "wipe" this token from an account.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key wipeKey = 8;
    • clearWipeKey

      public TokenUpdateTransactionBody.Builder clearWipeKey()
       *
       An Hedera key for wiping tokens from accounts.
       <p>
       This key, if set, SHALL have "wipe" authority for this token and
       MAY authorize transactions to "wipe" any amount of this token from
       any account, effectively burning the tokens "wiped".<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to "wipe" this token from an account.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key wipeKey = 8;
    • hasSupplyKey

      public boolean hasSupplyKey()
       *
       An Hedera key for "minting" and "burning" tokens.
       <p>
       This key, if set, MAY authorize transactions to "mint" new tokens to
       be delivered to the token treasury or "burn" tokens held by the
       token treasury.<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to change the supply of tokens and neither "mint" nor "burn"
       transactions SHALL be permitted.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key supplyKey = 9;
      Specified by:
      hasSupplyKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the supplyKey field is set.
    • getSupplyKey

      public Key getSupplyKey()
       *
       An Hedera key for "minting" and "burning" tokens.
       <p>
       This key, if set, MAY authorize transactions to "mint" new tokens to
       be delivered to the token treasury or "burn" tokens held by the
       token treasury.<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to change the supply of tokens and neither "mint" nor "burn"
       transactions SHALL be permitted.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key supplyKey = 9;
      Specified by:
      getSupplyKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The supplyKey.
    • setSupplyKey

      public TokenUpdateTransactionBody.Builder setSupplyKey(Key value)
       *
       An Hedera key for "minting" and "burning" tokens.
       <p>
       This key, if set, MAY authorize transactions to "mint" new tokens to
       be delivered to the token treasury or "burn" tokens held by the
       token treasury.<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to change the supply of tokens and neither "mint" nor "burn"
       transactions SHALL be permitted.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key supplyKey = 9;
    • setSupplyKey

      public TokenUpdateTransactionBody.Builder setSupplyKey(Key.Builder builderForValue)
       *
       An Hedera key for "minting" and "burning" tokens.
       <p>
       This key, if set, MAY authorize transactions to "mint" new tokens to
       be delivered to the token treasury or "burn" tokens held by the
       token treasury.<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to change the supply of tokens and neither "mint" nor "burn"
       transactions SHALL be permitted.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key supplyKey = 9;
    • mergeSupplyKey

      public TokenUpdateTransactionBody.Builder mergeSupplyKey(Key value)
       *
       An Hedera key for "minting" and "burning" tokens.
       <p>
       This key, if set, MAY authorize transactions to "mint" new tokens to
       be delivered to the token treasury or "burn" tokens held by the
       token treasury.<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to change the supply of tokens and neither "mint" nor "burn"
       transactions SHALL be permitted.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key supplyKey = 9;
    • clearSupplyKey

      public TokenUpdateTransactionBody.Builder clearSupplyKey()
       *
       An Hedera key for "minting" and "burning" tokens.
       <p>
       This key, if set, MAY authorize transactions to "mint" new tokens to
       be delivered to the token treasury or "burn" tokens held by the
       token treasury.<br/>
       If this key is set to an empty `KeyList`, it SHALL NOT be
       possible to change the supply of tokens and neither "mint" nor "burn"
       transactions SHALL be permitted.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key supplyKey = 9;
    • hasAutoRenewAccount

      public boolean hasAutoRenewAccount()
       *
       An identifier for the account to be charged renewal fees at the token's
       expiry to extend the lifetime of the token.
       <p>
       If this value is set for the identified token, the token lifetime SHALL
       be extended by the _smallest_ of the following at expiration:
       <ul>
       <li>The current `autoRenewPeriod` duration.</li>
       <li>The maximum duration that this account has funds to purchase.</li>
       <li>The configured MAX_AUTORENEW_PERIOD at the time of automatic
       renewal.</li>
       </ul>
       If this account's HBAR balance is `0` when the token must be
       renewed, then the token SHALL be expired, and MAY be subsequently
       removed from state.<br/>
       If this value is set, the referenced account MUST sign this
       transaction.
       <p>
       <blockquote>Note<blockquote>
       It is not currently possible to remove an automatic renewal account.
       Once set, it can only be replaced by a valid account.
       </blockquote></blockquote>
       
      .proto.AccountID autoRenewAccount = 10;
      Specified by:
      hasAutoRenewAccount in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the autoRenewAccount field is set.
    • getAutoRenewAccount

      public AccountID getAutoRenewAccount()
       *
       An identifier for the account to be charged renewal fees at the token's
       expiry to extend the lifetime of the token.
       <p>
       If this value is set for the identified token, the token lifetime SHALL
       be extended by the _smallest_ of the following at expiration:
       <ul>
       <li>The current `autoRenewPeriod` duration.</li>
       <li>The maximum duration that this account has funds to purchase.</li>
       <li>The configured MAX_AUTORENEW_PERIOD at the time of automatic
       renewal.</li>
       </ul>
       If this account's HBAR balance is `0` when the token must be
       renewed, then the token SHALL be expired, and MAY be subsequently
       removed from state.<br/>
       If this value is set, the referenced account MUST sign this
       transaction.
       <p>
       <blockquote>Note<blockquote>
       It is not currently possible to remove an automatic renewal account.
       Once set, it can only be replaced by a valid account.
       </blockquote></blockquote>
       
      .proto.AccountID autoRenewAccount = 10;
      Specified by:
      getAutoRenewAccount in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The autoRenewAccount.
    • setAutoRenewAccount

      public TokenUpdateTransactionBody.Builder setAutoRenewAccount(AccountID value)
       *
       An identifier for the account to be charged renewal fees at the token's
       expiry to extend the lifetime of the token.
       <p>
       If this value is set for the identified token, the token lifetime SHALL
       be extended by the _smallest_ of the following at expiration:
       <ul>
       <li>The current `autoRenewPeriod` duration.</li>
       <li>The maximum duration that this account has funds to purchase.</li>
       <li>The configured MAX_AUTORENEW_PERIOD at the time of automatic
       renewal.</li>
       </ul>
       If this account's HBAR balance is `0` when the token must be
       renewed, then the token SHALL be expired, and MAY be subsequently
       removed from state.<br/>
       If this value is set, the referenced account MUST sign this
       transaction.
       <p>
       <blockquote>Note<blockquote>
       It is not currently possible to remove an automatic renewal account.
       Once set, it can only be replaced by a valid account.
       </blockquote></blockquote>
       
      .proto.AccountID autoRenewAccount = 10;
    • setAutoRenewAccount

      public TokenUpdateTransactionBody.Builder setAutoRenewAccount(AccountID.Builder builderForValue)
       *
       An identifier for the account to be charged renewal fees at the token's
       expiry to extend the lifetime of the token.
       <p>
       If this value is set for the identified token, the token lifetime SHALL
       be extended by the _smallest_ of the following at expiration:
       <ul>
       <li>The current `autoRenewPeriod` duration.</li>
       <li>The maximum duration that this account has funds to purchase.</li>
       <li>The configured MAX_AUTORENEW_PERIOD at the time of automatic
       renewal.</li>
       </ul>
       If this account's HBAR balance is `0` when the token must be
       renewed, then the token SHALL be expired, and MAY be subsequently
       removed from state.<br/>
       If this value is set, the referenced account MUST sign this
       transaction.
       <p>
       <blockquote>Note<blockquote>
       It is not currently possible to remove an automatic renewal account.
       Once set, it can only be replaced by a valid account.
       </blockquote></blockquote>
       
      .proto.AccountID autoRenewAccount = 10;
    • mergeAutoRenewAccount

      public TokenUpdateTransactionBody.Builder mergeAutoRenewAccount(AccountID value)
       *
       An identifier for the account to be charged renewal fees at the token's
       expiry to extend the lifetime of the token.
       <p>
       If this value is set for the identified token, the token lifetime SHALL
       be extended by the _smallest_ of the following at expiration:
       <ul>
       <li>The current `autoRenewPeriod` duration.</li>
       <li>The maximum duration that this account has funds to purchase.</li>
       <li>The configured MAX_AUTORENEW_PERIOD at the time of automatic
       renewal.</li>
       </ul>
       If this account's HBAR balance is `0` when the token must be
       renewed, then the token SHALL be expired, and MAY be subsequently
       removed from state.<br/>
       If this value is set, the referenced account MUST sign this
       transaction.
       <p>
       <blockquote>Note<blockquote>
       It is not currently possible to remove an automatic renewal account.
       Once set, it can only be replaced by a valid account.
       </blockquote></blockquote>
       
      .proto.AccountID autoRenewAccount = 10;
    • clearAutoRenewAccount

      public TokenUpdateTransactionBody.Builder clearAutoRenewAccount()
       *
       An identifier for the account to be charged renewal fees at the token's
       expiry to extend the lifetime of the token.
       <p>
       If this value is set for the identified token, the token lifetime SHALL
       be extended by the _smallest_ of the following at expiration:
       <ul>
       <li>The current `autoRenewPeriod` duration.</li>
       <li>The maximum duration that this account has funds to purchase.</li>
       <li>The configured MAX_AUTORENEW_PERIOD at the time of automatic
       renewal.</li>
       </ul>
       If this account's HBAR balance is `0` when the token must be
       renewed, then the token SHALL be expired, and MAY be subsequently
       removed from state.<br/>
       If this value is set, the referenced account MUST sign this
       transaction.
       <p>
       <blockquote>Note<blockquote>
       It is not currently possible to remove an automatic renewal account.
       Once set, it can only be replaced by a valid account.
       </blockquote></blockquote>
       
      .proto.AccountID autoRenewAccount = 10;
    • hasAutoRenewPeriod

      public boolean hasAutoRenewPeriod()
       *
       A duration between token automatic renewals.<br/>
       All entities in state may be charged "rent" occasionally (typically
       every 90 days) to prevent unnecessary growth of the ledger. This value
       sets the interval between such events for this token.
       <p>
       If set, this value MUST be greater than the configured
       `MIN_AUTORENEW_PERIOD`.<br/>
       If set, this value MUST be less than the configured
       `MAX_AUTORENEW_PERIOD`.
       
      .proto.Duration autoRenewPeriod = 11;
      Specified by:
      hasAutoRenewPeriod in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the autoRenewPeriod field is set.
    • getAutoRenewPeriod

      public Duration getAutoRenewPeriod()
       *
       A duration between token automatic renewals.<br/>
       All entities in state may be charged "rent" occasionally (typically
       every 90 days) to prevent unnecessary growth of the ledger. This value
       sets the interval between such events for this token.
       <p>
       If set, this value MUST be greater than the configured
       `MIN_AUTORENEW_PERIOD`.<br/>
       If set, this value MUST be less than the configured
       `MAX_AUTORENEW_PERIOD`.
       
      .proto.Duration autoRenewPeriod = 11;
      Specified by:
      getAutoRenewPeriod in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The autoRenewPeriod.
    • setAutoRenewPeriod

      public TokenUpdateTransactionBody.Builder setAutoRenewPeriod(Duration value)
       *
       A duration between token automatic renewals.<br/>
       All entities in state may be charged "rent" occasionally (typically
       every 90 days) to prevent unnecessary growth of the ledger. This value
       sets the interval between such events for this token.
       <p>
       If set, this value MUST be greater than the configured
       `MIN_AUTORENEW_PERIOD`.<br/>
       If set, this value MUST be less than the configured
       `MAX_AUTORENEW_PERIOD`.
       
      .proto.Duration autoRenewPeriod = 11;
    • setAutoRenewPeriod

      public TokenUpdateTransactionBody.Builder setAutoRenewPeriod(Duration.Builder builderForValue)
       *
       A duration between token automatic renewals.<br/>
       All entities in state may be charged "rent" occasionally (typically
       every 90 days) to prevent unnecessary growth of the ledger. This value
       sets the interval between such events for this token.
       <p>
       If set, this value MUST be greater than the configured
       `MIN_AUTORENEW_PERIOD`.<br/>
       If set, this value MUST be less than the configured
       `MAX_AUTORENEW_PERIOD`.
       
      .proto.Duration autoRenewPeriod = 11;
    • mergeAutoRenewPeriod

      public TokenUpdateTransactionBody.Builder mergeAutoRenewPeriod(Duration value)
       *
       A duration between token automatic renewals.<br/>
       All entities in state may be charged "rent" occasionally (typically
       every 90 days) to prevent unnecessary growth of the ledger. This value
       sets the interval between such events for this token.
       <p>
       If set, this value MUST be greater than the configured
       `MIN_AUTORENEW_PERIOD`.<br/>
       If set, this value MUST be less than the configured
       `MAX_AUTORENEW_PERIOD`.
       
      .proto.Duration autoRenewPeriod = 11;
    • clearAutoRenewPeriod

      public TokenUpdateTransactionBody.Builder clearAutoRenewPeriod()
       *
       A duration between token automatic renewals.<br/>
       All entities in state may be charged "rent" occasionally (typically
       every 90 days) to prevent unnecessary growth of the ledger. This value
       sets the interval between such events for this token.
       <p>
       If set, this value MUST be greater than the configured
       `MIN_AUTORENEW_PERIOD`.<br/>
       If set, this value MUST be less than the configured
       `MAX_AUTORENEW_PERIOD`.
       
      .proto.Duration autoRenewPeriod = 11;
    • hasExpiry

      public boolean hasExpiry()
       *
       An expiration timestamp.
       <p>
       If this value is set, the automatic renewal account is not set for the
       identified token, and token expiration is enabled in network
       configuration, this token SHALL expire when the consensus time exceeds
       this value, and MAY be subsequently removed from the network state.<br/>
       If `autoRenewAccount` is set or the `auto_renew_account_id` is set for
       the identified token, the token SHALL be subject to automatic renewal
       when the consensus time exceeds this value.
       
      .proto.Timestamp expiry = 12;
      Specified by:
      hasExpiry in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the expiry field is set.
    • getExpiry

      public Timestamp getExpiry()
       *
       An expiration timestamp.
       <p>
       If this value is set, the automatic renewal account is not set for the
       identified token, and token expiration is enabled in network
       configuration, this token SHALL expire when the consensus time exceeds
       this value, and MAY be subsequently removed from the network state.<br/>
       If `autoRenewAccount` is set or the `auto_renew_account_id` is set for
       the identified token, the token SHALL be subject to automatic renewal
       when the consensus time exceeds this value.
       
      .proto.Timestamp expiry = 12;
      Specified by:
      getExpiry in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The expiry.
    • setExpiry

       *
       An expiration timestamp.
       <p>
       If this value is set, the automatic renewal account is not set for the
       identified token, and token expiration is enabled in network
       configuration, this token SHALL expire when the consensus time exceeds
       this value, and MAY be subsequently removed from the network state.<br/>
       If `autoRenewAccount` is set or the `auto_renew_account_id` is set for
       the identified token, the token SHALL be subject to automatic renewal
       when the consensus time exceeds this value.
       
      .proto.Timestamp expiry = 12;
    • setExpiry

      public TokenUpdateTransactionBody.Builder setExpiry(Timestamp.Builder builderForValue)
       *
       An expiration timestamp.
       <p>
       If this value is set, the automatic renewal account is not set for the
       identified token, and token expiration is enabled in network
       configuration, this token SHALL expire when the consensus time exceeds
       this value, and MAY be subsequently removed from the network state.<br/>
       If `autoRenewAccount` is set or the `auto_renew_account_id` is set for
       the identified token, the token SHALL be subject to automatic renewal
       when the consensus time exceeds this value.
       
      .proto.Timestamp expiry = 12;
    • mergeExpiry

      public TokenUpdateTransactionBody.Builder mergeExpiry(Timestamp value)
       *
       An expiration timestamp.
       <p>
       If this value is set, the automatic renewal account is not set for the
       identified token, and token expiration is enabled in network
       configuration, this token SHALL expire when the consensus time exceeds
       this value, and MAY be subsequently removed from the network state.<br/>
       If `autoRenewAccount` is set or the `auto_renew_account_id` is set for
       the identified token, the token SHALL be subject to automatic renewal
       when the consensus time exceeds this value.
       
      .proto.Timestamp expiry = 12;
    • clearExpiry

      public TokenUpdateTransactionBody.Builder clearExpiry()
       *
       An expiration timestamp.
       <p>
       If this value is set, the automatic renewal account is not set for the
       identified token, and token expiration is enabled in network
       configuration, this token SHALL expire when the consensus time exceeds
       this value, and MAY be subsequently removed from the network state.<br/>
       If `autoRenewAccount` is set or the `auto_renew_account_id` is set for
       the identified token, the token SHALL be subject to automatic renewal
       when the consensus time exceeds this value.
       
      .proto.Timestamp expiry = 12;
    • hasMemo

      public boolean hasMemo()
       *
       A short description for this token.
       <p>
       This value, if set, MUST NOT exceed `transaction.maxMemoUtf8Bytes`
       (default 100) bytes when encoded as UTF-8.
       
      .google.protobuf.StringValue memo = 13;
      Specified by:
      hasMemo in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the memo field is set.
    • getMemo

      public com.google.protobuf.StringValue getMemo()
       *
       A short description for this token.
       <p>
       This value, if set, MUST NOT exceed `transaction.maxMemoUtf8Bytes`
       (default 100) bytes when encoded as UTF-8.
       
      .google.protobuf.StringValue memo = 13;
      Specified by:
      getMemo in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The memo.
    • setMemo

      public TokenUpdateTransactionBody.Builder setMemo(com.google.protobuf.StringValue value)
       *
       A short description for this token.
       <p>
       This value, if set, MUST NOT exceed `transaction.maxMemoUtf8Bytes`
       (default 100) bytes when encoded as UTF-8.
       
      .google.protobuf.StringValue memo = 13;
    • setMemo

      public TokenUpdateTransactionBody.Builder setMemo(com.google.protobuf.StringValue.Builder builderForValue)
       *
       A short description for this token.
       <p>
       This value, if set, MUST NOT exceed `transaction.maxMemoUtf8Bytes`
       (default 100) bytes when encoded as UTF-8.
       
      .google.protobuf.StringValue memo = 13;
    • mergeMemo

      public TokenUpdateTransactionBody.Builder mergeMemo(com.google.protobuf.StringValue value)
       *
       A short description for this token.
       <p>
       This value, if set, MUST NOT exceed `transaction.maxMemoUtf8Bytes`
       (default 100) bytes when encoded as UTF-8.
       
      .google.protobuf.StringValue memo = 13;
    • clearMemo

       *
       A short description for this token.
       <p>
       This value, if set, MUST NOT exceed `transaction.maxMemoUtf8Bytes`
       (default 100) bytes when encoded as UTF-8.
       
      .google.protobuf.StringValue memo = 13;
    • hasFeeScheduleKey

      public boolean hasFeeScheduleKey()
       *
       An Hedera key for managing the token custom fee schedule.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `custom_fees` for this token.<br/>
       If this key is set to an empty `KeyList`, the `custom_fees`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key fee_schedule_key = 14;
      Specified by:
      hasFeeScheduleKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the feeScheduleKey field is set.
    • getFeeScheduleKey

      public Key getFeeScheduleKey()
       *
       An Hedera key for managing the token custom fee schedule.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `custom_fees` for this token.<br/>
       If this key is set to an empty `KeyList`, the `custom_fees`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key fee_schedule_key = 14;
      Specified by:
      getFeeScheduleKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The feeScheduleKey.
    • setFeeScheduleKey

      public TokenUpdateTransactionBody.Builder setFeeScheduleKey(Key value)
       *
       An Hedera key for managing the token custom fee schedule.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `custom_fees` for this token.<br/>
       If this key is set to an empty `KeyList`, the `custom_fees`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key fee_schedule_key = 14;
    • setFeeScheduleKey

      public TokenUpdateTransactionBody.Builder setFeeScheduleKey(Key.Builder builderForValue)
       *
       An Hedera key for managing the token custom fee schedule.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `custom_fees` for this token.<br/>
       If this key is set to an empty `KeyList`, the `custom_fees`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key fee_schedule_key = 14;
    • mergeFeeScheduleKey

      public TokenUpdateTransactionBody.Builder mergeFeeScheduleKey(Key value)
       *
       An Hedera key for managing the token custom fee schedule.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `custom_fees` for this token.<br/>
       If this key is set to an empty `KeyList`, the `custom_fees`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key fee_schedule_key = 14;
    • clearFeeScheduleKey

      public TokenUpdateTransactionBody.Builder clearFeeScheduleKey()
       *
       An Hedera key for managing the token custom fee schedule.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `custom_fees` for this token.<br/>
       If this key is set to an empty `KeyList`, the `custom_fees`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key fee_schedule_key = 14;
    • hasPauseKey

      public boolean hasPauseKey()
       *
       An Hedera key for managing token "pause".
       <p>
       This key, if set, SHALL have "pause" authority for this token and
       MAY authorize transactions to pause or unpause this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be paused or unpaused.<br/>
       If this key is removed while the token is paused, the token cannot
       be unpaused and SHALL remain paused.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key pause_key = 15;
      Specified by:
      hasPauseKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the pauseKey field is set.
    • getPauseKey

      public Key getPauseKey()
       *
       An Hedera key for managing token "pause".
       <p>
       This key, if set, SHALL have "pause" authority for this token and
       MAY authorize transactions to pause or unpause this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be paused or unpaused.<br/>
       If this key is removed while the token is paused, the token cannot
       be unpaused and SHALL remain paused.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key pause_key = 15;
      Specified by:
      getPauseKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The pauseKey.
    • setPauseKey

      public TokenUpdateTransactionBody.Builder setPauseKey(Key value)
       *
       An Hedera key for managing token "pause".
       <p>
       This key, if set, SHALL have "pause" authority for this token and
       MAY authorize transactions to pause or unpause this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be paused or unpaused.<br/>
       If this key is removed while the token is paused, the token cannot
       be unpaused and SHALL remain paused.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key pause_key = 15;
    • setPauseKey

      public TokenUpdateTransactionBody.Builder setPauseKey(Key.Builder builderForValue)
       *
       An Hedera key for managing token "pause".
       <p>
       This key, if set, SHALL have "pause" authority for this token and
       MAY authorize transactions to pause or unpause this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be paused or unpaused.<br/>
       If this key is removed while the token is paused, the token cannot
       be unpaused and SHALL remain paused.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key pause_key = 15;
    • mergePauseKey

      public TokenUpdateTransactionBody.Builder mergePauseKey(Key value)
       *
       An Hedera key for managing token "pause".
       <p>
       This key, if set, SHALL have "pause" authority for this token and
       MAY authorize transactions to pause or unpause this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be paused or unpaused.<br/>
       If this key is removed while the token is paused, the token cannot
       be unpaused and SHALL remain paused.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key pause_key = 15;
    • clearPauseKey

      public TokenUpdateTransactionBody.Builder clearPauseKey()
       *
       An Hedera key for managing token "pause".
       <p>
       This key, if set, SHALL have "pause" authority for this token and
       MAY authorize transactions to pause or unpause this token.<br/>
       If this key is set to an empty `KeyList`, this token
       SHALL NOT be paused or unpaused.<br/>
       If this key is removed while the token is paused, the token cannot
       be unpaused and SHALL remain paused.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key pause_key = 15;
    • hasMetadata

      public boolean hasMetadata()
       *
       Token "Metadata".
       <p>
       The value, if set, MUST NOT exceed 100 bytes.<br/>
       <dl><dt>Examples</dt>
       <dd>hcs://1/0.0.4896575</dd>
       <dd>ipfs://bafkreifd7tcjjuwxxf4qkaibkj62pj4mhfuud7plwrc3pfoygt55al6syi</dd>
       </dl>
       
      .google.protobuf.BytesValue metadata = 16;
      Specified by:
      hasMetadata in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the metadata field is set.
    • getMetadata

      public com.google.protobuf.BytesValue getMetadata()
       *
       Token "Metadata".
       <p>
       The value, if set, MUST NOT exceed 100 bytes.<br/>
       <dl><dt>Examples</dt>
       <dd>hcs://1/0.0.4896575</dd>
       <dd>ipfs://bafkreifd7tcjjuwxxf4qkaibkj62pj4mhfuud7plwrc3pfoygt55al6syi</dd>
       </dl>
       
      .google.protobuf.BytesValue metadata = 16;
      Specified by:
      getMetadata in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The metadata.
    • setMetadata

      public TokenUpdateTransactionBody.Builder setMetadata(com.google.protobuf.BytesValue value)
       *
       Token "Metadata".
       <p>
       The value, if set, MUST NOT exceed 100 bytes.<br/>
       <dl><dt>Examples</dt>
       <dd>hcs://1/0.0.4896575</dd>
       <dd>ipfs://bafkreifd7tcjjuwxxf4qkaibkj62pj4mhfuud7plwrc3pfoygt55al6syi</dd>
       </dl>
       
      .google.protobuf.BytesValue metadata = 16;
    • setMetadata

      public TokenUpdateTransactionBody.Builder setMetadata(com.google.protobuf.BytesValue.Builder builderForValue)
       *
       Token "Metadata".
       <p>
       The value, if set, MUST NOT exceed 100 bytes.<br/>
       <dl><dt>Examples</dt>
       <dd>hcs://1/0.0.4896575</dd>
       <dd>ipfs://bafkreifd7tcjjuwxxf4qkaibkj62pj4mhfuud7plwrc3pfoygt55al6syi</dd>
       </dl>
       
      .google.protobuf.BytesValue metadata = 16;
    • mergeMetadata

      public TokenUpdateTransactionBody.Builder mergeMetadata(com.google.protobuf.BytesValue value)
       *
       Token "Metadata".
       <p>
       The value, if set, MUST NOT exceed 100 bytes.<br/>
       <dl><dt>Examples</dt>
       <dd>hcs://1/0.0.4896575</dd>
       <dd>ipfs://bafkreifd7tcjjuwxxf4qkaibkj62pj4mhfuud7plwrc3pfoygt55al6syi</dd>
       </dl>
       
      .google.protobuf.BytesValue metadata = 16;
    • clearMetadata

      public TokenUpdateTransactionBody.Builder clearMetadata()
       *
       Token "Metadata".
       <p>
       The value, if set, MUST NOT exceed 100 bytes.<br/>
       <dl><dt>Examples</dt>
       <dd>hcs://1/0.0.4896575</dd>
       <dd>ipfs://bafkreifd7tcjjuwxxf4qkaibkj62pj4mhfuud7plwrc3pfoygt55al6syi</dd>
       </dl>
       
      .google.protobuf.BytesValue metadata = 16;
    • hasMetadataKey

      public boolean hasMetadataKey()
       *
       An Hedera key for managing the token `metadata`.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `metadata` for this token.<br/>
       If this key is set to an empty `KeyList`, the `metadata`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key metadata_key = 17;
      Specified by:
      hasMetadataKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      Whether the metadataKey field is set.
    • getMetadataKey

      public Key getMetadataKey()
       *
       An Hedera key for managing the token `metadata`.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `metadata` for this token.<br/>
       If this key is set to an empty `KeyList`, the `metadata`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key metadata_key = 17;
      Specified by:
      getMetadataKey in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The metadataKey.
    • setMetadataKey

      public TokenUpdateTransactionBody.Builder setMetadataKey(Key value)
       *
       An Hedera key for managing the token `metadata`.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `metadata` for this token.<br/>
       If this key is set to an empty `KeyList`, the `metadata`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key metadata_key = 17;
    • setMetadataKey

      public TokenUpdateTransactionBody.Builder setMetadataKey(Key.Builder builderForValue)
       *
       An Hedera key for managing the token `metadata`.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `metadata` for this token.<br/>
       If this key is set to an empty `KeyList`, the `metadata`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key metadata_key = 17;
    • mergeMetadataKey

      public TokenUpdateTransactionBody.Builder mergeMetadataKey(Key value)
       *
       An Hedera key for managing the token `metadata`.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `metadata` for this token.<br/>
       If this key is set to an empty `KeyList`, the `metadata`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key metadata_key = 17;
    • clearMetadataKey

      public TokenUpdateTransactionBody.Builder clearMetadataKey()
       *
       An Hedera key for managing the token `metadata`.
       <p>
       This key, if set, MAY authorize transactions to modify the
       `metadata` for this token.<br/>
       If this key is set to an empty `KeyList`, the `metadata`
       for this token SHALL NOT be modified.<br/>
       If set, this key MUST be a valid key or an empty `KeyList`.<br/>
       If set to a valid key, the previous key and new key MUST both
       sign this transaction.
       
      .proto.Key metadata_key = 17;
    • getKeyVerificationModeValue

      public int getKeyVerificationModeValue()
       *
       Set a key validation mode.<br/>
       Any key may be updated by a transaction signed by the token `admin_key`.
       Each role key may _also_ sign a transaction to update that key.
       If a role key signs an update to change that role key both old
       and new key must sign the transaction, _unless_ this field is set
       to `NO_VALIDATION`, in which case the _new_ key is not required to
       sign the transaction (the existing key is still required).<br/>
       The primary intent for this field is to allow a role key (e.g. a
       `pause_key`) holder to "remove" that key from the token by signing
       a transaction to set that role key to an empty `KeyList`.
       <p>
       If set to `FULL_VALIDATION`, either the `admin_key` or _both_ current
       and new key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       If set to `NO_VALIDATION`, either the `admin_key` or the current
       key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       This field SHALL be treated as `FULL_VALIDATION` if not set.
       
      .proto.TokenKeyValidation key_verification_mode = 18;
      Specified by:
      getKeyVerificationModeValue in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The enum numeric value on the wire for keyVerificationMode.
    • setKeyVerificationModeValue

      public TokenUpdateTransactionBody.Builder setKeyVerificationModeValue(int value)
       *
       Set a key validation mode.<br/>
       Any key may be updated by a transaction signed by the token `admin_key`.
       Each role key may _also_ sign a transaction to update that key.
       If a role key signs an update to change that role key both old
       and new key must sign the transaction, _unless_ this field is set
       to `NO_VALIDATION`, in which case the _new_ key is not required to
       sign the transaction (the existing key is still required).<br/>
       The primary intent for this field is to allow a role key (e.g. a
       `pause_key`) holder to "remove" that key from the token by signing
       a transaction to set that role key to an empty `KeyList`.
       <p>
       If set to `FULL_VALIDATION`, either the `admin_key` or _both_ current
       and new key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       If set to `NO_VALIDATION`, either the `admin_key` or the current
       key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       This field SHALL be treated as `FULL_VALIDATION` if not set.
       
      .proto.TokenKeyValidation key_verification_mode = 18;
      Parameters:
      value - The keyVerificationMode to set.
      Returns:
      This builder for chaining.
      Throws:
      IllegalArgumentException - if UNRECOGNIZED is provided.
    • getKeyVerificationMode

      public TokenKeyValidation getKeyVerificationMode()
       *
       Set a key validation mode.<br/>
       Any key may be updated by a transaction signed by the token `admin_key`.
       Each role key may _also_ sign a transaction to update that key.
       If a role key signs an update to change that role key both old
       and new key must sign the transaction, _unless_ this field is set
       to `NO_VALIDATION`, in which case the _new_ key is not required to
       sign the transaction (the existing key is still required).<br/>
       The primary intent for this field is to allow a role key (e.g. a
       `pause_key`) holder to "remove" that key from the token by signing
       a transaction to set that role key to an empty `KeyList`.
       <p>
       If set to `FULL_VALIDATION`, either the `admin_key` or _both_ current
       and new key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       If set to `NO_VALIDATION`, either the `admin_key` or the current
       key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       This field SHALL be treated as `FULL_VALIDATION` if not set.
       
      .proto.TokenKeyValidation key_verification_mode = 18;
      Specified by:
      getKeyVerificationMode in interface TokenUpdateTransactionBodyOrBuilder
      Returns:
      The keyVerificationMode.
    • setKeyVerificationMode

      public TokenUpdateTransactionBody.Builder setKeyVerificationMode(TokenKeyValidation value)
       *
       Set a key validation mode.<br/>
       Any key may be updated by a transaction signed by the token `admin_key`.
       Each role key may _also_ sign a transaction to update that key.
       If a role key signs an update to change that role key both old
       and new key must sign the transaction, _unless_ this field is set
       to `NO_VALIDATION`, in which case the _new_ key is not required to
       sign the transaction (the existing key is still required).<br/>
       The primary intent for this field is to allow a role key (e.g. a
       `pause_key`) holder to "remove" that key from the token by signing
       a transaction to set that role key to an empty `KeyList`.
       <p>
       If set to `FULL_VALIDATION`, either the `admin_key` or _both_ current
       and new key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       If set to `NO_VALIDATION`, either the `admin_key` or the current
       key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       This field SHALL be treated as `FULL_VALIDATION` if not set.
       
      .proto.TokenKeyValidation key_verification_mode = 18;
      Parameters:
      value - The enum numeric value on the wire for keyVerificationMode to set.
      Returns:
      This builder for chaining.
    • clearKeyVerificationMode

      public TokenUpdateTransactionBody.Builder clearKeyVerificationMode()
       *
       Set a key validation mode.<br/>
       Any key may be updated by a transaction signed by the token `admin_key`.
       Each role key may _also_ sign a transaction to update that key.
       If a role key signs an update to change that role key both old
       and new key must sign the transaction, _unless_ this field is set
       to `NO_VALIDATION`, in which case the _new_ key is not required to
       sign the transaction (the existing key is still required).<br/>
       The primary intent for this field is to allow a role key (e.g. a
       `pause_key`) holder to "remove" that key from the token by signing
       a transaction to set that role key to an empty `KeyList`.
       <p>
       If set to `FULL_VALIDATION`, either the `admin_key` or _both_ current
       and new key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       If set to `NO_VALIDATION`, either the `admin_key` or the current
       key MUST sign this transaction to update a "key" field for the
       identified token.<br/>
       This field SHALL be treated as `FULL_VALIDATION` if not set.
       
      .proto.TokenKeyValidation key_verification_mode = 18;
      Returns:
      This builder for chaining.