Class TokenUpdateTransactionBody

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

@Generated public final class TokenUpdateTransactionBody extends com.google.protobuf.GeneratedMessageLite<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
  • Field Details

  • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • 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.
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static TokenUpdateTransactionBody parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static TokenUpdateTransactionBody parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static TokenUpdateTransactionBody parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilder

      public static TokenUpdateTransactionBody.Builder newBuilder()
    • newBuilder

      public static TokenUpdateTransactionBody.Builder newBuilder(TokenUpdateTransactionBody prototype)
    • dynamicMethod

      protected final Object dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1)
      Specified by:
      dynamicMethod in class com.google.protobuf.GeneratedMessageLite<TokenUpdateTransactionBody,TokenUpdateTransactionBody.Builder>
    • getDefaultInstance

      public static TokenUpdateTransactionBody getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<TokenUpdateTransactionBody> parser()