All Downloads are FREE. Search and download functionalities are using the official Maven repository.

shgraph.hapi.0.54.0.source-code.consensus_update_topic.proto Maven / Gradle / Ivy

The newest version!
syntax = "proto3";

package proto;

/*-
 * ‌
 * Hedera Network Services Protobuf
 * ​
 * Copyright (C) 2018 - 2021 Hedera Hashgraph, LLC
 * ​
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ‍
 */

option java_package = "com.hederahashgraph.api.proto.java";
// <<>> This comment is special code for setting PBJ Compiler java package
option java_multiple_files = true;

import "google/protobuf/wrappers.proto";
import "basic_types.proto";
import "duration.proto";
import "timestamp.proto";

/**
 * All fields left null will not be updated.
 * See [ConsensusService.updateTopic()](#proto.ConsensusService)
 */
message ConsensusUpdateTopicTransactionBody {
    /**
     * UNDOCUMENTED
     */
    TopicID topicID = 1;

    /**
     * If set, the new memo to be associated with the topic (UTF-8 encoding max 100 bytes)
     */
    google.protobuf.StringValue memo = 2;

    /**
     * Effective consensus timestamp at (and after) which all consensus transactions and queries will fail.
     * The expirationTime may be no longer than MAX_AUTORENEW_PERIOD (8000001 seconds) from the consensus timestamp of
     * this transaction.
     * On topics with no adminKey, extending the expirationTime is the only updateTopic option allowed on the topic.
     * If unspecified, no change.
     */
    Timestamp expirationTime = 4;

    /**
     * Access control for update/delete of the topic.
     * If unspecified, no change.
     * If empty keyList - the adminKey is cleared.
     */
    Key adminKey = 6;

    /**
     * Access control for ConsensusService.submitMessage.
     * If unspecified, no change.
     * If empty keyList - the submitKey is cleared.
     */
    Key submitKey = 7;

    /*
     * The amount of time to extend the topic's lifetime automatically at expirationTime if the autoRenewAccount is
     * configured and has funds (once autoRenew functionality is supported by HAPI).
     * Limited to between MIN_AUTORENEW_PERIOD (6999999 seconds) and MAX_AUTORENEW_PERIOD (8000001 seconds) by
     * servers-side configuration (which may change).
     * If unspecified, no change.
     */
    Duration autoRenewPeriod = 8;

    /**
     * Optional account to be used at the topic's expirationTime to extend the life of the topic.
     * Once autoRenew functionality is supported by HAPI, the topic lifetime will be extended up to a maximum of the
     * autoRenewPeriod or however long the topic can be extended using all funds on the account (whichever is the
     * smaller duration/amount).
     * If specified as the default value (0.0.0), the autoRenewAccount will be removed.
     * If unspecified, no change.
     */
    AccountID autoRenewAccount = 9;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy