
com.tencentcloudapi.cls.v20201016.models.ModifyTopicRequest Maven / Gradle / Ivy
/*
* Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* 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.
*/
package com.tencentcloudapi.cls.v20201016.models;
import com.tencentcloudapi.common.AbstractModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;
public class ModifyTopicRequest extends AbstractModel{
/**
* Log topic ID
*/
@SerializedName("TopicId")
@Expose
private String TopicId;
/**
* Log topic name
*/
@SerializedName("TopicName")
@Expose
private String TopicName;
/**
* Tag description list. This parameter is used to bind a tag to a log topic. Up to 10 tag key-value pairs are supported, and they must be unique.
*/
@SerializedName("Tags")
@Expose
private Tag [] Tags;
/**
* Whether to start collection for this log topic
*/
@SerializedName("Status")
@Expose
private Boolean Status;
/**
* Whether to enable automatic split
*/
@SerializedName("AutoSplit")
@Expose
private Boolean AutoSplit;
/**
* Maximum number of partitions to split into for this topic if automatic split is enabled
*/
@SerializedName("MaxSplitPartitions")
@Expose
private Long MaxSplitPartitions;
/**
* Lifecycle in days. Value range: 1–3600 (STANDARD storage); 7–3600 (IA storage). `3640` indicates permanent retention.
*/
@SerializedName("Period")
@Expose
private Long Period;
/**
* Get Log topic ID
* @return TopicId Log topic ID
*/
public String getTopicId() {
return this.TopicId;
}
/**
* Set Log topic ID
* @param TopicId Log topic ID
*/
public void setTopicId(String TopicId) {
this.TopicId = TopicId;
}
/**
* Get Log topic name
* @return TopicName Log topic name
*/
public String getTopicName() {
return this.TopicName;
}
/**
* Set Log topic name
* @param TopicName Log topic name
*/
public void setTopicName(String TopicName) {
this.TopicName = TopicName;
}
/**
* Get Tag description list. This parameter is used to bind a tag to a log topic. Up to 10 tag key-value pairs are supported, and they must be unique.
* @return Tags Tag description list. This parameter is used to bind a tag to a log topic. Up to 10 tag key-value pairs are supported, and they must be unique.
*/
public Tag [] getTags() {
return this.Tags;
}
/**
* Set Tag description list. This parameter is used to bind a tag to a log topic. Up to 10 tag key-value pairs are supported, and they must be unique.
* @param Tags Tag description list. This parameter is used to bind a tag to a log topic. Up to 10 tag key-value pairs are supported, and they must be unique.
*/
public void setTags(Tag [] Tags) {
this.Tags = Tags;
}
/**
* Get Whether to start collection for this log topic
* @return Status Whether to start collection for this log topic
*/
public Boolean getStatus() {
return this.Status;
}
/**
* Set Whether to start collection for this log topic
* @param Status Whether to start collection for this log topic
*/
public void setStatus(Boolean Status) {
this.Status = Status;
}
/**
* Get Whether to enable automatic split
* @return AutoSplit Whether to enable automatic split
*/
public Boolean getAutoSplit() {
return this.AutoSplit;
}
/**
* Set Whether to enable automatic split
* @param AutoSplit Whether to enable automatic split
*/
public void setAutoSplit(Boolean AutoSplit) {
this.AutoSplit = AutoSplit;
}
/**
* Get Maximum number of partitions to split into for this topic if automatic split is enabled
* @return MaxSplitPartitions Maximum number of partitions to split into for this topic if automatic split is enabled
*/
public Long getMaxSplitPartitions() {
return this.MaxSplitPartitions;
}
/**
* Set Maximum number of partitions to split into for this topic if automatic split is enabled
* @param MaxSplitPartitions Maximum number of partitions to split into for this topic if automatic split is enabled
*/
public void setMaxSplitPartitions(Long MaxSplitPartitions) {
this.MaxSplitPartitions = MaxSplitPartitions;
}
/**
* Get Lifecycle in days. Value range: 1–3600 (STANDARD storage); 7–3600 (IA storage). `3640` indicates permanent retention.
* @return Period Lifecycle in days. Value range: 1–3600 (STANDARD storage); 7–3600 (IA storage). `3640` indicates permanent retention.
*/
public Long getPeriod() {
return this.Period;
}
/**
* Set Lifecycle in days. Value range: 1–3600 (STANDARD storage); 7–3600 (IA storage). `3640` indicates permanent retention.
* @param Period Lifecycle in days. Value range: 1–3600 (STANDARD storage); 7–3600 (IA storage). `3640` indicates permanent retention.
*/
public void setPeriod(Long Period) {
this.Period = Period;
}
public ModifyTopicRequest() {
}
/**
* NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
* and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy.
*/
public ModifyTopicRequest(ModifyTopicRequest source) {
if (source.TopicId != null) {
this.TopicId = new String(source.TopicId);
}
if (source.TopicName != null) {
this.TopicName = new String(source.TopicName);
}
if (source.Tags != null) {
this.Tags = new Tag[source.Tags.length];
for (int i = 0; i < source.Tags.length; i++) {
this.Tags[i] = new Tag(source.Tags[i]);
}
}
if (source.Status != null) {
this.Status = new Boolean(source.Status);
}
if (source.AutoSplit != null) {
this.AutoSplit = new Boolean(source.AutoSplit);
}
if (source.MaxSplitPartitions != null) {
this.MaxSplitPartitions = new Long(source.MaxSplitPartitions);
}
if (source.Period != null) {
this.Period = new Long(source.Period);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamSimple(map, prefix + "TopicId", this.TopicId);
this.setParamSimple(map, prefix + "TopicName", this.TopicName);
this.setParamArrayObj(map, prefix + "Tags.", this.Tags);
this.setParamSimple(map, prefix + "Status", this.Status);
this.setParamSimple(map, prefix + "AutoSplit", this.AutoSplit);
this.setParamSimple(map, prefix + "MaxSplitPartitions", this.MaxSplitPartitions);
this.setParamSimple(map, prefix + "Period", this.Period);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy