Class ConsensusUpdateTopicTransactionBody.Builder

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

public static final class ConsensusUpdateTopicTransactionBody.Builder extends com.google.protobuf.GeneratedMessageLite.Builder<ConsensusUpdateTopicTransactionBody,ConsensusUpdateTopicTransactionBody.Builder> implements ConsensusUpdateTopicTransactionBodyOrBuilder
 *
 Update the fields of an existing HCS topic.

 The topicID field is REQUIRED. All other fields are OPTIONAL.<br/>
 Fields set on this transaction SHALL be updated.<br/>
 Fields _not_ set on this transaction SHALL NOT be updated.

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

    • hasTopicID

      public boolean hasTopicID()
       *
       The topic ID specifying the topic to update.
       <p>
       A topic with this ID MUST exist and MUST NOT be deleted.<br/>
       This value is REQUIRED.
       
      .proto.TopicID topicID = 1;
      Specified by:
      hasTopicID in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the topicID field is set.
    • getTopicID

      public TopicID getTopicID()
       *
       The topic ID specifying the topic to update.
       <p>
       A topic with this ID MUST exist and MUST NOT be deleted.<br/>
       This value is REQUIRED.
       
      .proto.TopicID topicID = 1;
      Specified by:
      getTopicID in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The topicID.
    • setTopicID

       *
       The topic ID specifying the topic to update.
       <p>
       A topic with this ID MUST exist and MUST NOT be deleted.<br/>
       This value is REQUIRED.
       
      .proto.TopicID topicID = 1;
    • setTopicID

      public ConsensusUpdateTopicTransactionBody.Builder setTopicID(TopicID.Builder builderForValue)
       *
       The topic ID specifying the topic to update.
       <p>
       A topic with this ID MUST exist and MUST NOT be deleted.<br/>
       This value is REQUIRED.
       
      .proto.TopicID topicID = 1;
    • mergeTopicID

       *
       The topic ID specifying the topic to update.
       <p>
       A topic with this ID MUST exist and MUST NOT be deleted.<br/>
       This value is REQUIRED.
       
      .proto.TopicID topicID = 1;
    • clearTopicID

       *
       The topic ID specifying the topic to update.
       <p>
       A topic with this ID MUST exist and MUST NOT be deleted.<br/>
       This value is REQUIRED.
       
      .proto.TopicID topicID = 1;
    • hasMemo

      public boolean hasMemo()
       *
       An updated memo to be associated with this topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, SHALL be encoded UTF-8 and SHALL NOT exceed
       100 bytes when so encoded.
       
      .google.protobuf.StringValue memo = 2;
      Specified by:
      hasMemo in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the memo field is set.
    • getMemo

      public com.google.protobuf.StringValue getMemo()
       *
       An updated memo to be associated with this topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, SHALL be encoded UTF-8 and SHALL NOT exceed
       100 bytes when so encoded.
       
      .google.protobuf.StringValue memo = 2;
      Specified by:
      getMemo in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The memo.
    • setMemo

      public ConsensusUpdateTopicTransactionBody.Builder setMemo(com.google.protobuf.StringValue value)
       *
       An updated memo to be associated with this topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, SHALL be encoded UTF-8 and SHALL NOT exceed
       100 bytes when so encoded.
       
      .google.protobuf.StringValue memo = 2;
    • setMemo

      public ConsensusUpdateTopicTransactionBody.Builder setMemo(com.google.protobuf.StringValue.Builder builderForValue)
       *
       An updated memo to be associated with this topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, SHALL be encoded UTF-8 and SHALL NOT exceed
       100 bytes when so encoded.
       
      .google.protobuf.StringValue memo = 2;
    • mergeMemo

      public ConsensusUpdateTopicTransactionBody.Builder mergeMemo(com.google.protobuf.StringValue value)
       *
       An updated memo to be associated with this topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, SHALL be encoded UTF-8 and SHALL NOT exceed
       100 bytes when so encoded.
       
      .google.protobuf.StringValue memo = 2;
    • clearMemo

       *
       An updated memo to be associated with this topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, SHALL be encoded UTF-8 and SHALL NOT exceed
       100 bytes when so encoded.
       
      .google.protobuf.StringValue memo = 2;
    • hasExpirationTime

      public boolean hasExpirationTime()
       *
       An updated expiration time for this topic, in seconds since the epoch.
       <p>
       For this purpose, `epoch` SHALL be the UNIX epoch
       with 0 at `1970-01-01T00:00:00.000Z`.<br/>
       The expirationTime MUST NOT be greater than the sum of
       `MAX_AUTORENEW_PERIOD` and the actual consensus timestamp of
       this transaction.<br/>
       If `adminKey` is <b>unset</b> for the _topic_, this transaction MUST NOT
       modify any other field.
       
      .proto.Timestamp expirationTime = 4;
      Specified by:
      hasExpirationTime in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the expirationTime field is set.
    • getExpirationTime

      public Timestamp getExpirationTime()
       *
       An updated expiration time for this topic, in seconds since the epoch.
       <p>
       For this purpose, `epoch` SHALL be the UNIX epoch
       with 0 at `1970-01-01T00:00:00.000Z`.<br/>
       The expirationTime MUST NOT be greater than the sum of
       `MAX_AUTORENEW_PERIOD` and the actual consensus timestamp of
       this transaction.<br/>
       If `adminKey` is <b>unset</b> for the _topic_, this transaction MUST NOT
       modify any other field.
       
      .proto.Timestamp expirationTime = 4;
      Specified by:
      getExpirationTime in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The expirationTime.
    • setExpirationTime

      public ConsensusUpdateTopicTransactionBody.Builder setExpirationTime(Timestamp value)
       *
       An updated expiration time for this topic, in seconds since the epoch.
       <p>
       For this purpose, `epoch` SHALL be the UNIX epoch
       with 0 at `1970-01-01T00:00:00.000Z`.<br/>
       The expirationTime MUST NOT be greater than the sum of
       `MAX_AUTORENEW_PERIOD` and the actual consensus timestamp of
       this transaction.<br/>
       If `adminKey` is <b>unset</b> for the _topic_, this transaction MUST NOT
       modify any other field.
       
      .proto.Timestamp expirationTime = 4;
    • setExpirationTime

      public ConsensusUpdateTopicTransactionBody.Builder setExpirationTime(Timestamp.Builder builderForValue)
       *
       An updated expiration time for this topic, in seconds since the epoch.
       <p>
       For this purpose, `epoch` SHALL be the UNIX epoch
       with 0 at `1970-01-01T00:00:00.000Z`.<br/>
       The expirationTime MUST NOT be greater than the sum of
       `MAX_AUTORENEW_PERIOD` and the actual consensus timestamp of
       this transaction.<br/>
       If `adminKey` is <b>unset</b> for the _topic_, this transaction MUST NOT
       modify any other field.
       
      .proto.Timestamp expirationTime = 4;
    • mergeExpirationTime

      public ConsensusUpdateTopicTransactionBody.Builder mergeExpirationTime(Timestamp value)
       *
       An updated expiration time for this topic, in seconds since the epoch.
       <p>
       For this purpose, `epoch` SHALL be the UNIX epoch
       with 0 at `1970-01-01T00:00:00.000Z`.<br/>
       The expirationTime MUST NOT be greater than the sum of
       `MAX_AUTORENEW_PERIOD` and the actual consensus timestamp of
       this transaction.<br/>
       If `adminKey` is <b>unset</b> for the _topic_, this transaction MUST NOT
       modify any other field.
       
      .proto.Timestamp expirationTime = 4;
    • clearExpirationTime

      public ConsensusUpdateTopicTransactionBody.Builder clearExpirationTime()
       *
       An updated expiration time for this topic, in seconds since the epoch.
       <p>
       For this purpose, `epoch` SHALL be the UNIX epoch
       with 0 at `1970-01-01T00:00:00.000Z`.<br/>
       The expirationTime MUST NOT be greater than the sum of
       `MAX_AUTORENEW_PERIOD` and the actual consensus timestamp of
       this transaction.<br/>
       If `adminKey` is <b>unset</b> for the _topic_, this transaction MUST NOT
       modify any other field.
       
      .proto.Timestamp expirationTime = 4;
    • hasAdminKey

      public boolean hasAdminKey()
       *
       Updated access control for modification of the topic.
       <p>
       If this field is set, that key and the previously set key MUST both
       sign this transaction.<br/>
       If this value is an empty `KeyList`, the prior key MUST sign this
       transaction, and the topic SHALL be immutable after this transaction
       completes, except for expiration and renewal.
       
      .proto.Key adminKey = 6;
      Specified by:
      hasAdminKey in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the adminKey field is set.
    • getAdminKey

      public Key getAdminKey()
       *
       Updated access control for modification of the topic.
       <p>
       If this field is set, that key and the previously set key MUST both
       sign this transaction.<br/>
       If this value is an empty `KeyList`, the prior key MUST sign this
       transaction, and the topic SHALL be immutable after this transaction
       completes, except for expiration and renewal.
       
      .proto.Key adminKey = 6;
      Specified by:
      getAdminKey in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The adminKey.
    • setAdminKey

       *
       Updated access control for modification of the topic.
       <p>
       If this field is set, that key and the previously set key MUST both
       sign this transaction.<br/>
       If this value is an empty `KeyList`, the prior key MUST sign this
       transaction, and the topic SHALL be immutable after this transaction
       completes, except for expiration and renewal.
       
      .proto.Key adminKey = 6;
    • setAdminKey

      public ConsensusUpdateTopicTransactionBody.Builder setAdminKey(Key.Builder builderForValue)
       *
       Updated access control for modification of the topic.
       <p>
       If this field is set, that key and the previously set key MUST both
       sign this transaction.<br/>
       If this value is an empty `KeyList`, the prior key MUST sign this
       transaction, and the topic SHALL be immutable after this transaction
       completes, except for expiration and renewal.
       
      .proto.Key adminKey = 6;
    • mergeAdminKey

      public ConsensusUpdateTopicTransactionBody.Builder mergeAdminKey(Key value)
       *
       Updated access control for modification of the topic.
       <p>
       If this field is set, that key and the previously set key MUST both
       sign this transaction.<br/>
       If this value is an empty `KeyList`, the prior key MUST sign this
       transaction, and the topic SHALL be immutable after this transaction
       completes, except for expiration and renewal.
       
      .proto.Key adminKey = 6;
    • clearAdminKey

       *
       Updated access control for modification of the topic.
       <p>
       If this field is set, that key and the previously set key MUST both
       sign this transaction.<br/>
       If this value is an empty `KeyList`, the prior key MUST sign this
       transaction, and the topic SHALL be immutable after this transaction
       completes, except for expiration and renewal.
       
      .proto.Key adminKey = 6;
    • hasSubmitKey

      public boolean hasSubmitKey()
       *
       Updated access control for message submission to the topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to an empty `KeyList`, the `submitKey` for the
       topic will be unset after this transaction completes. When the
       `submitKey` is unset, any account may submit a message on the topic,
       without restriction.
       
      .proto.Key submitKey = 7;
      Specified by:
      hasSubmitKey in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the submitKey field is set.
    • getSubmitKey

      public Key getSubmitKey()
       *
       Updated access control for message submission to the topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to an empty `KeyList`, the `submitKey` for the
       topic will be unset after this transaction completes. When the
       `submitKey` is unset, any account may submit a message on the topic,
       without restriction.
       
      .proto.Key submitKey = 7;
      Specified by:
      getSubmitKey in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The submitKey.
    • setSubmitKey

      public ConsensusUpdateTopicTransactionBody.Builder setSubmitKey(Key value)
       *
       Updated access control for message submission to the topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to an empty `KeyList`, the `submitKey` for the
       topic will be unset after this transaction completes. When the
       `submitKey` is unset, any account may submit a message on the topic,
       without restriction.
       
      .proto.Key submitKey = 7;
    • setSubmitKey

      public ConsensusUpdateTopicTransactionBody.Builder setSubmitKey(Key.Builder builderForValue)
       *
       Updated access control for message submission to the topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to an empty `KeyList`, the `submitKey` for the
       topic will be unset after this transaction completes. When the
       `submitKey` is unset, any account may submit a message on the topic,
       without restriction.
       
      .proto.Key submitKey = 7;
    • mergeSubmitKey

      public ConsensusUpdateTopicTransactionBody.Builder mergeSubmitKey(Key value)
       *
       Updated access control for message submission to the topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to an empty `KeyList`, the `submitKey` for the
       topic will be unset after this transaction completes. When the
       `submitKey` is unset, any account may submit a message on the topic,
       without restriction.
       
      .proto.Key submitKey = 7;
    • clearSubmitKey

       *
       Updated access control for message submission to the topic.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to an empty `KeyList`, the `submitKey` for the
       topic will be unset after this transaction completes. When the
       `submitKey` is unset, any account may submit a message on the topic,
       without restriction.
       
      .proto.Key submitKey = 7;
    • hasAutoRenewPeriod

      public boolean hasAutoRenewPeriod()
      
       An updated value for the number of seconds by which the topic expiration
       will be automatically extended upon expiration, if it has a valid
       auto-renew account.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, MUST be greater than the
       configured MIN_AUTORENEW_PERIOD.<br/>
       This value, if set, MUST be less than the
       configured MAX_AUTORENEW_PERIOD.
       
      .proto.Duration autoRenewPeriod = 8;
      Specified by:
      hasAutoRenewPeriod in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the autoRenewPeriod field is set.
    • getAutoRenewPeriod

      public Duration getAutoRenewPeriod()
      
       An updated value for the number of seconds by which the topic expiration
       will be automatically extended upon expiration, if it has a valid
       auto-renew account.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, MUST be greater than the
       configured MIN_AUTORENEW_PERIOD.<br/>
       This value, if set, MUST be less than the
       configured MAX_AUTORENEW_PERIOD.
       
      .proto.Duration autoRenewPeriod = 8;
      Specified by:
      getAutoRenewPeriod in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The autoRenewPeriod.
    • setAutoRenewPeriod

      public ConsensusUpdateTopicTransactionBody.Builder setAutoRenewPeriod(Duration value)
      
       An updated value for the number of seconds by which the topic expiration
       will be automatically extended upon expiration, if it has a valid
       auto-renew account.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, MUST be greater than the
       configured MIN_AUTORENEW_PERIOD.<br/>
       This value, if set, MUST be less than the
       configured MAX_AUTORENEW_PERIOD.
       
      .proto.Duration autoRenewPeriod = 8;
    • setAutoRenewPeriod

      public ConsensusUpdateTopicTransactionBody.Builder setAutoRenewPeriod(Duration.Builder builderForValue)
      
       An updated value for the number of seconds by which the topic expiration
       will be automatically extended upon expiration, if it has a valid
       auto-renew account.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, MUST be greater than the
       configured MIN_AUTORENEW_PERIOD.<br/>
       This value, if set, MUST be less than the
       configured MAX_AUTORENEW_PERIOD.
       
      .proto.Duration autoRenewPeriod = 8;
    • mergeAutoRenewPeriod

      public ConsensusUpdateTopicTransactionBody.Builder mergeAutoRenewPeriod(Duration value)
      
       An updated value for the number of seconds by which the topic expiration
       will be automatically extended upon expiration, if it has a valid
       auto-renew account.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, MUST be greater than the
       configured MIN_AUTORENEW_PERIOD.<br/>
       This value, if set, MUST be less than the
       configured MAX_AUTORENEW_PERIOD.
       
      .proto.Duration autoRenewPeriod = 8;
    • clearAutoRenewPeriod

      public ConsensusUpdateTopicTransactionBody.Builder clearAutoRenewPeriod()
      
       An updated value for the number of seconds by which the topic expiration
       will be automatically extended upon expiration, if it has a valid
       auto-renew account.
       <p>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       This value, if set, MUST be greater than the
       configured MIN_AUTORENEW_PERIOD.<br/>
       This value, if set, MUST be less than the
       configured MAX_AUTORENEW_PERIOD.
       
      .proto.Duration autoRenewPeriod = 8;
    • hasAutoRenewAccount

      public boolean hasAutoRenewAccount()
       *
       An updated ID for the account to be charged renewal fees at the topic's
       `expirationTime` to extend the lifetime of the topic.
       <p>
       If this value is set and not the "sentinel account", the referenced
       account MUST sign this transaction.<br/>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to the "sentinel account", which is `0.0.0`, the
       `autoRenewAccount` SHALL be removed from the topic.
       
      .proto.AccountID autoRenewAccount = 9;
      Specified by:
      hasAutoRenewAccount in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the autoRenewAccount field is set.
    • getAutoRenewAccount

      public AccountID getAutoRenewAccount()
       *
       An updated ID for the account to be charged renewal fees at the topic's
       `expirationTime` to extend the lifetime of the topic.
       <p>
       If this value is set and not the "sentinel account", the referenced
       account MUST sign this transaction.<br/>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to the "sentinel account", which is `0.0.0`, the
       `autoRenewAccount` SHALL be removed from the topic.
       
      .proto.AccountID autoRenewAccount = 9;
      Specified by:
      getAutoRenewAccount in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The autoRenewAccount.
    • setAutoRenewAccount

      public ConsensusUpdateTopicTransactionBody.Builder setAutoRenewAccount(AccountID value)
       *
       An updated ID for the account to be charged renewal fees at the topic's
       `expirationTime` to extend the lifetime of the topic.
       <p>
       If this value is set and not the "sentinel account", the referenced
       account MUST sign this transaction.<br/>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to the "sentinel account", which is `0.0.0`, the
       `autoRenewAccount` SHALL be removed from the topic.
       
      .proto.AccountID autoRenewAccount = 9;
    • setAutoRenewAccount

      public ConsensusUpdateTopicTransactionBody.Builder setAutoRenewAccount(AccountID.Builder builderForValue)
       *
       An updated ID for the account to be charged renewal fees at the topic's
       `expirationTime` to extend the lifetime of the topic.
       <p>
       If this value is set and not the "sentinel account", the referenced
       account MUST sign this transaction.<br/>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to the "sentinel account", which is `0.0.0`, the
       `autoRenewAccount` SHALL be removed from the topic.
       
      .proto.AccountID autoRenewAccount = 9;
    • mergeAutoRenewAccount

      public ConsensusUpdateTopicTransactionBody.Builder mergeAutoRenewAccount(AccountID value)
       *
       An updated ID for the account to be charged renewal fees at the topic's
       `expirationTime` to extend the lifetime of the topic.
       <p>
       If this value is set and not the "sentinel account", the referenced
       account MUST sign this transaction.<br/>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to the "sentinel account", which is `0.0.0`, the
       `autoRenewAccount` SHALL be removed from the topic.
       
      .proto.AccountID autoRenewAccount = 9;
    • clearAutoRenewAccount

      public ConsensusUpdateTopicTransactionBody.Builder clearAutoRenewAccount()
       *
       An updated ID for the account to be charged renewal fees at the topic's
       `expirationTime` to extend the lifetime of the topic.
       <p>
       If this value is set and not the "sentinel account", the referenced
       account MUST sign this transaction.<br/>
       If this value is set, the current `adminKey` for the topic MUST sign
       this transaction.<br/>
       If this value is set to the "sentinel account", which is `0.0.0`, the
       `autoRenewAccount` SHALL be removed from the topic.
       
      .proto.AccountID autoRenewAccount = 9;
    • hasFeeScheduleKey

      public boolean hasFeeScheduleKey()
       *
       Access control for update/delete of custom fees.
       <p>
       If set, subsequent consensus_update_topic transactions signed with this
       key MAY update or delete the custom fees for this topic.<br/>
       If this field is set, the admin key MUST sign this transaction.<br/>
       If this field is set, the previous value SHALL be replaced.<br/>
       If set to a 'Key' containing an empty 'KeyList', the previous value
       SHALL be cleared.<br/>
       If not set, the current key SHALL NOT change.<br/>
       If unset in state, this field MUST NOT be set in this transaction.<br/>
       If not set when the topic is created, this field CANNOT be set via
       update.<br/>
       
      .proto.Key fee_schedule_key = 10;
      Specified by:
      hasFeeScheduleKey in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the feeScheduleKey field is set.
    • getFeeScheduleKey

      public Key getFeeScheduleKey()
       *
       Access control for update/delete of custom fees.
       <p>
       If set, subsequent consensus_update_topic transactions signed with this
       key MAY update or delete the custom fees for this topic.<br/>
       If this field is set, the admin key MUST sign this transaction.<br/>
       If this field is set, the previous value SHALL be replaced.<br/>
       If set to a 'Key' containing an empty 'KeyList', the previous value
       SHALL be cleared.<br/>
       If not set, the current key SHALL NOT change.<br/>
       If unset in state, this field MUST NOT be set in this transaction.<br/>
       If not set when the topic is created, this field CANNOT be set via
       update.<br/>
       
      .proto.Key fee_schedule_key = 10;
      Specified by:
      getFeeScheduleKey in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The feeScheduleKey.
    • setFeeScheduleKey

      public ConsensusUpdateTopicTransactionBody.Builder setFeeScheduleKey(Key value)
       *
       Access control for update/delete of custom fees.
       <p>
       If set, subsequent consensus_update_topic transactions signed with this
       key MAY update or delete the custom fees for this topic.<br/>
       If this field is set, the admin key MUST sign this transaction.<br/>
       If this field is set, the previous value SHALL be replaced.<br/>
       If set to a 'Key' containing an empty 'KeyList', the previous value
       SHALL be cleared.<br/>
       If not set, the current key SHALL NOT change.<br/>
       If unset in state, this field MUST NOT be set in this transaction.<br/>
       If not set when the topic is created, this field CANNOT be set via
       update.<br/>
       
      .proto.Key fee_schedule_key = 10;
    • setFeeScheduleKey

      public ConsensusUpdateTopicTransactionBody.Builder setFeeScheduleKey(Key.Builder builderForValue)
       *
       Access control for update/delete of custom fees.
       <p>
       If set, subsequent consensus_update_topic transactions signed with this
       key MAY update or delete the custom fees for this topic.<br/>
       If this field is set, the admin key MUST sign this transaction.<br/>
       If this field is set, the previous value SHALL be replaced.<br/>
       If set to a 'Key' containing an empty 'KeyList', the previous value
       SHALL be cleared.<br/>
       If not set, the current key SHALL NOT change.<br/>
       If unset in state, this field MUST NOT be set in this transaction.<br/>
       If not set when the topic is created, this field CANNOT be set via
       update.<br/>
       
      .proto.Key fee_schedule_key = 10;
    • mergeFeeScheduleKey

      public ConsensusUpdateTopicTransactionBody.Builder mergeFeeScheduleKey(Key value)
       *
       Access control for update/delete of custom fees.
       <p>
       If set, subsequent consensus_update_topic transactions signed with this
       key MAY update or delete the custom fees for this topic.<br/>
       If this field is set, the admin key MUST sign this transaction.<br/>
       If this field is set, the previous value SHALL be replaced.<br/>
       If set to a 'Key' containing an empty 'KeyList', the previous value
       SHALL be cleared.<br/>
       If not set, the current key SHALL NOT change.<br/>
       If unset in state, this field MUST NOT be set in this transaction.<br/>
       If not set when the topic is created, this field CANNOT be set via
       update.<br/>
       
      .proto.Key fee_schedule_key = 10;
    • clearFeeScheduleKey

      public ConsensusUpdateTopicTransactionBody.Builder clearFeeScheduleKey()
       *
       Access control for update/delete of custom fees.
       <p>
       If set, subsequent consensus_update_topic transactions signed with this
       key MAY update or delete the custom fees for this topic.<br/>
       If this field is set, the admin key MUST sign this transaction.<br/>
       If this field is set, the previous value SHALL be replaced.<br/>
       If set to a 'Key' containing an empty 'KeyList', the previous value
       SHALL be cleared.<br/>
       If not set, the current key SHALL NOT change.<br/>
       If unset in state, this field MUST NOT be set in this transaction.<br/>
       If not set when the topic is created, this field CANNOT be set via
       update.<br/>
       
      .proto.Key fee_schedule_key = 10;
    • hasFeeExemptKeyList

      public boolean hasFeeExemptKeyList()
       *
       A set of keys<br/>
       Keys in this list are permitted to submit messages to this topic without
       paying custom fees associated with this topic.
       <p>
       If a submit transaction is signed by _any_ key included in this set,
       custom fees SHALL NOT be charged for that transaction.<br/>
       If this field is not set, the current set of keys SHALL NOT change.<br/>
       If this field is set, but contains an empty list, any existing fee-exempt
       keys SHALL be removed.<br/>
       A `fee_exempt_key_list` MUST NOT contain more than
       `MAX_ENTRIES_FOR_FEE_EXEMPT_KEY_LIST` keys.<br/>
       A `fee_exempt_key_list` MUST NOT contain any duplicate keys.<br/>
       A `fee_exempt_key_list` MAY contain keys for accounts that are inactive,
       deleted, or non-existent.
       
      .proto.FeeExemptKeyList fee_exempt_key_list = 11;
      Specified by:
      hasFeeExemptKeyList in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the feeExemptKeyList field is set.
    • getFeeExemptKeyList

      public FeeExemptKeyList getFeeExemptKeyList()
       *
       A set of keys<br/>
       Keys in this list are permitted to submit messages to this topic without
       paying custom fees associated with this topic.
       <p>
       If a submit transaction is signed by _any_ key included in this set,
       custom fees SHALL NOT be charged for that transaction.<br/>
       If this field is not set, the current set of keys SHALL NOT change.<br/>
       If this field is set, but contains an empty list, any existing fee-exempt
       keys SHALL be removed.<br/>
       A `fee_exempt_key_list` MUST NOT contain more than
       `MAX_ENTRIES_FOR_FEE_EXEMPT_KEY_LIST` keys.<br/>
       A `fee_exempt_key_list` MUST NOT contain any duplicate keys.<br/>
       A `fee_exempt_key_list` MAY contain keys for accounts that are inactive,
       deleted, or non-existent.
       
      .proto.FeeExemptKeyList fee_exempt_key_list = 11;
      Specified by:
      getFeeExemptKeyList in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The feeExemptKeyList.
    • setFeeExemptKeyList

       *
       A set of keys<br/>
       Keys in this list are permitted to submit messages to this topic without
       paying custom fees associated with this topic.
       <p>
       If a submit transaction is signed by _any_ key included in this set,
       custom fees SHALL NOT be charged for that transaction.<br/>
       If this field is not set, the current set of keys SHALL NOT change.<br/>
       If this field is set, but contains an empty list, any existing fee-exempt
       keys SHALL be removed.<br/>
       A `fee_exempt_key_list` MUST NOT contain more than
       `MAX_ENTRIES_FOR_FEE_EXEMPT_KEY_LIST` keys.<br/>
       A `fee_exempt_key_list` MUST NOT contain any duplicate keys.<br/>
       A `fee_exempt_key_list` MAY contain keys for accounts that are inactive,
       deleted, or non-existent.
       
      .proto.FeeExemptKeyList fee_exempt_key_list = 11;
    • setFeeExemptKeyList

      public ConsensusUpdateTopicTransactionBody.Builder setFeeExemptKeyList(FeeExemptKeyList.Builder builderForValue)
       *
       A set of keys<br/>
       Keys in this list are permitted to submit messages to this topic without
       paying custom fees associated with this topic.
       <p>
       If a submit transaction is signed by _any_ key included in this set,
       custom fees SHALL NOT be charged for that transaction.<br/>
       If this field is not set, the current set of keys SHALL NOT change.<br/>
       If this field is set, but contains an empty list, any existing fee-exempt
       keys SHALL be removed.<br/>
       A `fee_exempt_key_list` MUST NOT contain more than
       `MAX_ENTRIES_FOR_FEE_EXEMPT_KEY_LIST` keys.<br/>
       A `fee_exempt_key_list` MUST NOT contain any duplicate keys.<br/>
       A `fee_exempt_key_list` MAY contain keys for accounts that are inactive,
       deleted, or non-existent.
       
      .proto.FeeExemptKeyList fee_exempt_key_list = 11;
    • mergeFeeExemptKeyList

      public ConsensusUpdateTopicTransactionBody.Builder mergeFeeExemptKeyList(FeeExemptKeyList value)
       *
       A set of keys<br/>
       Keys in this list are permitted to submit messages to this topic without
       paying custom fees associated with this topic.
       <p>
       If a submit transaction is signed by _any_ key included in this set,
       custom fees SHALL NOT be charged for that transaction.<br/>
       If this field is not set, the current set of keys SHALL NOT change.<br/>
       If this field is set, but contains an empty list, any existing fee-exempt
       keys SHALL be removed.<br/>
       A `fee_exempt_key_list` MUST NOT contain more than
       `MAX_ENTRIES_FOR_FEE_EXEMPT_KEY_LIST` keys.<br/>
       A `fee_exempt_key_list` MUST NOT contain any duplicate keys.<br/>
       A `fee_exempt_key_list` MAY contain keys for accounts that are inactive,
       deleted, or non-existent.
       
      .proto.FeeExemptKeyList fee_exempt_key_list = 11;
    • clearFeeExemptKeyList

      public ConsensusUpdateTopicTransactionBody.Builder clearFeeExemptKeyList()
       *
       A set of keys<br/>
       Keys in this list are permitted to submit messages to this topic without
       paying custom fees associated with this topic.
       <p>
       If a submit transaction is signed by _any_ key included in this set,
       custom fees SHALL NOT be charged for that transaction.<br/>
       If this field is not set, the current set of keys SHALL NOT change.<br/>
       If this field is set, but contains an empty list, any existing fee-exempt
       keys SHALL be removed.<br/>
       A `fee_exempt_key_list` MUST NOT contain more than
       `MAX_ENTRIES_FOR_FEE_EXEMPT_KEY_LIST` keys.<br/>
       A `fee_exempt_key_list` MUST NOT contain any duplicate keys.<br/>
       A `fee_exempt_key_list` MAY contain keys for accounts that are inactive,
       deleted, or non-existent.
       
      .proto.FeeExemptKeyList fee_exempt_key_list = 11;
    • hasCustomFees

      public boolean hasCustomFees()
       *
       A set of custom fee definitions.<br/>
       These are fees to be assessed for each submit to this topic.
       <p>
       Each fee defined in this set SHALL be evaluated for
       each message submitted to this topic, and the resultant
       total assessed fees SHALL be charged.<br/>
       Custom fees defined here SHALL be assessed in addition to the base
       network and node fees.<br/>
       If this field is not set, the current set of custom fees
       SHALL NOT change.<br/>
       If this field is set, but contains an empty list, all current custom fees
       SHALL be removed.
       custom_fees list SHALL NOT contain more than
       `MAX_CUSTOM_FEE_ENTRIES_FOR_TOPICS` entries.
       
      .proto.FixedCustomFeeList custom_fees = 12;
      Specified by:
      hasCustomFees in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      Whether the customFees field is set.
    • getCustomFees

      public FixedCustomFeeList getCustomFees()
       *
       A set of custom fee definitions.<br/>
       These are fees to be assessed for each submit to this topic.
       <p>
       Each fee defined in this set SHALL be evaluated for
       each message submitted to this topic, and the resultant
       total assessed fees SHALL be charged.<br/>
       Custom fees defined here SHALL be assessed in addition to the base
       network and node fees.<br/>
       If this field is not set, the current set of custom fees
       SHALL NOT change.<br/>
       If this field is set, but contains an empty list, all current custom fees
       SHALL be removed.
       custom_fees list SHALL NOT contain more than
       `MAX_CUSTOM_FEE_ENTRIES_FOR_TOPICS` entries.
       
      .proto.FixedCustomFeeList custom_fees = 12;
      Specified by:
      getCustomFees in interface ConsensusUpdateTopicTransactionBodyOrBuilder
      Returns:
      The customFees.
    • setCustomFees

       *
       A set of custom fee definitions.<br/>
       These are fees to be assessed for each submit to this topic.
       <p>
       Each fee defined in this set SHALL be evaluated for
       each message submitted to this topic, and the resultant
       total assessed fees SHALL be charged.<br/>
       Custom fees defined here SHALL be assessed in addition to the base
       network and node fees.<br/>
       If this field is not set, the current set of custom fees
       SHALL NOT change.<br/>
       If this field is set, but contains an empty list, all current custom fees
       SHALL be removed.
       custom_fees list SHALL NOT contain more than
       `MAX_CUSTOM_FEE_ENTRIES_FOR_TOPICS` entries.
       
      .proto.FixedCustomFeeList custom_fees = 12;
    • setCustomFees

       *
       A set of custom fee definitions.<br/>
       These are fees to be assessed for each submit to this topic.
       <p>
       Each fee defined in this set SHALL be evaluated for
       each message submitted to this topic, and the resultant
       total assessed fees SHALL be charged.<br/>
       Custom fees defined here SHALL be assessed in addition to the base
       network and node fees.<br/>
       If this field is not set, the current set of custom fees
       SHALL NOT change.<br/>
       If this field is set, but contains an empty list, all current custom fees
       SHALL be removed.
       custom_fees list SHALL NOT contain more than
       `MAX_CUSTOM_FEE_ENTRIES_FOR_TOPICS` entries.
       
      .proto.FixedCustomFeeList custom_fees = 12;
    • mergeCustomFees

       *
       A set of custom fee definitions.<br/>
       These are fees to be assessed for each submit to this topic.
       <p>
       Each fee defined in this set SHALL be evaluated for
       each message submitted to this topic, and the resultant
       total assessed fees SHALL be charged.<br/>
       Custom fees defined here SHALL be assessed in addition to the base
       network and node fees.<br/>
       If this field is not set, the current set of custom fees
       SHALL NOT change.<br/>
       If this field is set, but contains an empty list, all current custom fees
       SHALL be removed.
       custom_fees list SHALL NOT contain more than
       `MAX_CUSTOM_FEE_ENTRIES_FOR_TOPICS` entries.
       
      .proto.FixedCustomFeeList custom_fees = 12;
    • clearCustomFees

       *
       A set of custom fee definitions.<br/>
       These are fees to be assessed for each submit to this topic.
       <p>
       Each fee defined in this set SHALL be evaluated for
       each message submitted to this topic, and the resultant
       total assessed fees SHALL be charged.<br/>
       Custom fees defined here SHALL be assessed in addition to the base
       network and node fees.<br/>
       If this field is not set, the current set of custom fees
       SHALL NOT change.<br/>
       If this field is set, but contains an empty list, all current custom fees
       SHALL be removed.
       custom_fees list SHALL NOT contain more than
       `MAX_CUSTOM_FEE_ENTRIES_FOR_TOPICS` entries.
       
      .proto.FixedCustomFeeList custom_fees = 12;