tencentcloud-sdk-nodejs-intl-en
Version:
1,935 lines (1,626 loc) • 285 kB
JavaScript
/*
* Copyright (c) 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.
*/
const AbstractModel = require("../../common/abstract_model");
/**
* Topic details
* @class
*/
class TopicDetail extends AbstractModel {
constructor(){
super();
/**
* Topic name
* @type {string || null}
*/
this.TopicName = null;
/**
* Topic ID
* @type {string || null}
*/
this.TopicId = null;
/**
* Number of partitions
* @type {number || null}
*/
this.PartitionNum = null;
/**
* Number of replicas
* @type {number || null}
*/
this.ReplicaNum = null;
/**
* Remarks
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Note = null;
/**
* Creation time
* @type {number || null}
*/
this.CreateTime = null;
/**
* Whether to enable IP authentication allowlist. true: yes, false: no
* @type {boolean || null}
*/
this.EnableWhiteList = null;
/**
* Number of IPs in IP allowlist
* @type {number || null}
*/
this.IpWhiteListCount = null;
/**
* COS bucket for data backup: address of the destination COS bucket
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ForwardCosBucket = null;
/**
* Status of data backup to COS. 1: not enabled, 0: enabled
* @type {number || null}
*/
this.ForwardStatus = null;
/**
* Frequency of data backup to COS
* @type {number || null}
*/
this.ForwardInterval = null;
/**
* Advanced configuration
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Config || null}
*/
this.Config = null;
/**
* Message retention time configuration (for recording the latest retention time)
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {TopicRetentionTimeConfigRsp || null}
*/
this.RetentionTimeConfig = null;
/**
* `0`: normal, `1`: deleted, `2`: deleting
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Status = null;
/**
* Tag list
Note: This field may return null, indicating that no valid values can be obtained.
* @type {Array.<Tag> || null}
*/
this.Tags = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.TopicId = 'TopicId' in params ? params.TopicId : null;
this.PartitionNum = 'PartitionNum' in params ? params.PartitionNum : null;
this.ReplicaNum = 'ReplicaNum' in params ? params.ReplicaNum : null;
this.Note = 'Note' in params ? params.Note : null;
this.CreateTime = 'CreateTime' in params ? params.CreateTime : null;
this.EnableWhiteList = 'EnableWhiteList' in params ? params.EnableWhiteList : null;
this.IpWhiteListCount = 'IpWhiteListCount' in params ? params.IpWhiteListCount : null;
this.ForwardCosBucket = 'ForwardCosBucket' in params ? params.ForwardCosBucket : null;
this.ForwardStatus = 'ForwardStatus' in params ? params.ForwardStatus : null;
this.ForwardInterval = 'ForwardInterval' in params ? params.ForwardInterval : null;
if (params.Config) {
let obj = new Config();
obj.deserialize(params.Config)
this.Config = obj;
}
if (params.RetentionTimeConfig) {
let obj = new TopicRetentionTimeConfigRsp();
obj.deserialize(params.RetentionTimeConfig)
this.RetentionTimeConfig = obj;
}
this.Status = 'Status' in params ? params.Status : null;
if (params.Tags) {
this.Tags = new Array();
for (let z in params.Tags) {
let obj = new Tag();
obj.deserialize(params.Tags[z]);
this.Tags.push(obj);
}
}
}
}
/**
* DeleteAcl request structure.
* @class
*/
class DeleteAclRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID information
* @type {string || null}
*/
this.InstanceId = null;
/**
* ACL resource type (`2`: TOPIC, `3`: GROUP, `4`: CLUSTER).
* @type {number || null}
*/
this.ResourceType = null;
/**
* Resource name, which is related to `resourceType`. For example, if `resourceType` is `TOPIC`, this field indicates the topic name; if `resourceType` is `GROUP`, this field indicates the group name; if `resourceType` is `CLUSTER`, this field can be left empty.
* @type {string || null}
*/
this.ResourceName = null;
/**
* ACL operation type (`2`: ALL, `3`: READ, `4`: WRITE, `5`: CREATE, `6`: DELETE, `7`: ALTER, `8`: DESCRIBE, `9`: CLUSTER_ACTION, `10`: DESCRIBE_CONFIGS, `11`: ALTER_CONFIGS, `12`: IDEMPOTENT_WRITE).
* @type {number || null}
*/
this.Operation = null;
/**
* Permission type (`2`: DENY, `3`: ALLOW). CKafka currently supports `ALLOW`, which is equivalent to allowlist. `DENY` will be supported for ACLs compatible with open-source Kafka.
* @type {number || null}
*/
this.PermissionType = null;
/**
* The default value is `*`, which means that any host can access. Currently, CKafka does not support the host as `*`, but the future product based on the open-source Kafka will directly support this
* @type {string || null}
*/
this.Host = null;
/**
* User list. The default value is `*`, which means that any user can access. The current user can only be one included in the user list
* @type {string || null}
*/
this.Principal = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.ResourceType = 'ResourceType' in params ? params.ResourceType : null;
this.ResourceName = 'ResourceName' in params ? params.ResourceName : null;
this.Operation = 'Operation' in params ? params.Operation : null;
this.PermissionType = 'PermissionType' in params ? params.PermissionType : null;
this.Host = 'Host' in params ? params.Host : null;
this.Principal = 'Principal' in params ? params.Principal : null;
}
}
/**
* CreateInstancePost response structure.
* @class
*/
class CreateInstancePostResponse extends AbstractModel {
constructor(){
super();
/**
* Returned result
* @type {JgwOperateResponse || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new JgwOperateResponse();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Consumer information
* @class
*/
class GroupInfoMember extends AbstractModel {
constructor(){
super();
/**
* Unique ID generated for consumer in consumer group by coordinator
* @type {string || null}
*/
this.MemberId = null;
/**
* `client.id` information by the client consumer SDK
* @type {string || null}
*/
this.ClientId = null;
/**
* Generally stores client IP address
* @type {string || null}
*/
this.ClientHost = null;
/**
* Stores the information of partition assigned to this consumer
* @type {Assignment || null}
*/
this.Assignment = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.MemberId = 'MemberId' in params ? params.MemberId : null;
this.ClientId = 'ClientId' in params ? params.ClientId : null;
this.ClientHost = 'ClientHost' in params ? params.ClientHost : null;
if (params.Assignment) {
let obj = new Assignment();
obj.deserialize(params.Assignment)
this.Assignment = obj;
}
}
}
/**
* RouteDTO
* @class
*/
class RouteDTO extends AbstractModel {
constructor(){
super();
/**
* RouteId11 Note: This field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.RouteId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RouteId = 'RouteId' in params ? params.RouteId : null;
}
}
/**
* BatchCreateAcl request structure.
* @class
*/
class BatchCreateAclRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
* @type {string || null}
*/
this.InstanceId = null;
/**
* ACL resource type. Default value: `2` (topic).
* @type {number || null}
*/
this.ResourceType = null;
/**
* Resource list array.
* @type {Array.<string> || null}
*/
this.ResourceNames = null;
/**
* ACL rule list.
* @type {Array.<AclRuleInfo> || null}
*/
this.RuleList = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.ResourceType = 'ResourceType' in params ? params.ResourceType : null;
this.ResourceNames = 'ResourceNames' in params ? params.ResourceNames : null;
if (params.RuleList) {
this.RuleList = new Array();
for (let z in params.RuleList) {
let obj = new AclRuleInfo();
obj.deserialize(params.RuleList[z]);
this.RuleList.push(obj);
}
}
}
}
/**
* DeleteUser request structure.
* @class
*/
class DeleteUserRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Username
* @type {string || null}
*/
this.Name = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Name = 'Name' in params ? params.Name : null;
}
}
/**
* Partition and offset
* @class
*/
class PartitionOffset extends AbstractModel {
constructor(){
super();
/**
* Partition, such as "0" or "1"
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Partition = null;
/**
* Offset, such as 100
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Offset = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Partition = 'Partition' in params ? params.Partition : null;
this.Offset = 'Offset' in params ? params.Offset : null;
}
}
/**
* DescribeACL request structure.
* @class
*/
class DescribeACLRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* ACL resource type (`2`: TOPIC, `3`: GROUP, `4`: CLUSTER).
* @type {number || null}
*/
this.ResourceType = null;
/**
* Resource name, which is related to `resourceType`. For example, if `resourceType` is `TOPIC`, this field indicates the topic name; if `resourceType` is `GROUP`, this field indicates the group name; if `resourceType` is `CLUSTER`, this field can be left empty.
* @type {string || null}
*/
this.ResourceName = null;
/**
* Offset position
* @type {number || null}
*/
this.Offset = null;
/**
* Quantity limit
* @type {number || null}
*/
this.Limit = null;
/**
* Keyword match
* @type {string || null}
*/
this.SearchWord = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.ResourceType = 'ResourceType' in params ? params.ResourceType : null;
this.ResourceName = 'ResourceName' in params ? params.ResourceName : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.SearchWord = 'SearchWord' in params ? params.SearchWord : null;
}
}
/**
* Results of the batch modified topic attributes
* @class
*/
class BatchModifyTopicResultDTO extends AbstractModel {
constructor(){
super();
/**
* Instance ID.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Topic name.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TopicName = null;
/**
* Status code.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ReturnCode = null;
/**
* Message status.
* @type {string || null}
*/
this.Message = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.ReturnCode = 'ReturnCode' in params ? params.ReturnCode : null;
this.Message = 'Message' in params ? params.Message : null;
}
}
/**
* DescribeTopicAttributes request structure.
* @class
*/
class DescribeTopicAttributesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Topic name
* @type {string || null}
*/
this.TopicName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.TopicName = 'TopicName' in params ? params.TopicName : null;
}
}
/**
* DescribeInstanceAttributes request structure.
* @class
*/
class DescribeInstanceAttributesRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* User group entity
* @class
*/
class ConsumerGroup extends AbstractModel {
constructor(){
super();
/**
* User group name
* @type {string || null}
*/
this.ConsumerGroupName = null;
/**
* Subscribed message entity
* @type {Array.<SubscribedInfo> || null}
*/
this.SubscribedInfo = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ConsumerGroupName = 'ConsumerGroupName' in params ? params.ConsumerGroupName : null;
if (params.SubscribedInfo) {
this.SubscribedInfo = new Array();
for (let z in params.SubscribedInfo) {
let obj = new SubscribedInfo();
obj.deserialize(params.SubscribedInfo[z]);
this.SubscribedInfo.push(obj);
}
}
}
}
/**
* Stores the information of partition assigned to this consumer
* @class
*/
class Assignment extends AbstractModel {
constructor(){
super();
/**
* Assignment version information
* @type {number || null}
*/
this.Version = null;
/**
* Topic information list
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<GroupInfoTopics> || null}
*/
this.Topics = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Version = 'Version' in params ? params.Version : null;
if (params.Topics) {
this.Topics = new Array();
for (let z in params.Topics) {
let obj = new GroupInfoTopics();
obj.deserialize(params.Topics[z]);
this.Topics.push(obj);
}
}
}
}
/**
* ModifyAclRule request structure.
* @class
*/
class ModifyAclRuleRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* ACL policy name
* @type {string || null}
*/
this.RuleName = null;
/**
* Whether to be applied to new topics
* @type {number || null}
*/
this.IsApplied = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.RuleName = 'RuleName' in params ? params.RuleName : null;
this.IsApplied = 'IsApplied' in params ? params.IsApplied : null;
}
}
/**
* DescribeAclRule response structure.
* @class
*/
class DescribeAclRuleResponse extends AbstractModel {
constructor(){
super();
/**
* The set of returned ACL rules
* @type {AclRuleResp || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new AclRuleResp();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeConsumerGroup response structure.
* @class
*/
class DescribeConsumerGroupResponse extends AbstractModel {
constructor(){
super();
/**
* Returned consumer group information
* @type {ConsumerGroupResponse || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new ConsumerGroupResponse();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Prices of different purchased items
* @class
*/
class InquiryDetailPrice extends AbstractModel {
constructor(){
super();
/**
* Price of additional private network bandwidth
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryBasePrice || null}
*/
this.BandwidthPrice = null;
/**
* Disk price
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryBasePrice || null}
*/
this.DiskPrice = null;
/**
* Price of additional partitions
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryBasePrice || null}
*/
this.PartitionPrice = null;
/**
* Price of additional topics
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryBasePrice || null}
*/
this.TopicPrice = null;
/**
* Instance package price
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryBasePrice || null}
*/
this.InstanceTypePrice = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.BandwidthPrice) {
let obj = new InquiryBasePrice();
obj.deserialize(params.BandwidthPrice)
this.BandwidthPrice = obj;
}
if (params.DiskPrice) {
let obj = new InquiryBasePrice();
obj.deserialize(params.DiskPrice)
this.DiskPrice = obj;
}
if (params.PartitionPrice) {
let obj = new InquiryBasePrice();
obj.deserialize(params.PartitionPrice)
this.PartitionPrice = obj;
}
if (params.TopicPrice) {
let obj = new InquiryBasePrice();
obj.deserialize(params.TopicPrice)
this.TopicPrice = obj;
}
if (params.InstanceTypePrice) {
let obj = new InquiryBasePrice();
obj.deserialize(params.InstanceTypePrice)
this.InstanceTypePrice = obj;
}
}
}
/**
* Values returned by the `InquireCkafkaPrice` API
* @class
*/
class InquireCkafkaPriceResp extends AbstractModel {
constructor(){
super();
/**
* Instance price
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryPrice || null}
*/
this.InstancePrice = null;
/**
* Public network bandwidth price
Note: This field may return null, indicating that no valid values can be obtained.
* @type {InquiryPrice || null}
*/
this.PublicNetworkBandwidthPrice = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.InstancePrice) {
let obj = new InquiryPrice();
obj.deserialize(params.InstancePrice)
this.InstancePrice = obj;
}
if (params.PublicNetworkBandwidthPrice) {
let obj = new InquiryPrice();
obj.deserialize(params.PublicNetworkBandwidthPrice)
this.PublicNetworkBandwidthPrice = obj;
}
}
}
/**
* DeleteTopic request structure.
* @class
*/
class DeleteTopicRequest extends AbstractModel {
constructor(){
super();
/**
* CKafka instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* CKafka topic name
* @type {string || null}
*/
this.TopicName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.TopicName = 'TopicName' in params ? params.TopicName : null;
}
}
/**
* DescribeInstances response structure.
* @class
*/
class DescribeInstancesResponse extends AbstractModel {
constructor(){
super();
/**
* Returned result
* @type {InstanceResponse || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new InstanceResponse();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* FetchMessageByOffset response structure.
* @class
*/
class FetchMessageByOffsetResponse extends AbstractModel {
constructor(){
super();
/**
* Returned results
* @type {ConsumerRecord || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new ConsumerRecord();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* BatchModifyTopicAttributes response structure.
* @class
*/
class BatchModifyTopicAttributesResponse extends AbstractModel {
constructor(){
super();
/**
* Returned result.
* @type {Array.<BatchModifyTopicResultDTO> || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
this.Result = new Array();
for (let z in params.Result) {
let obj = new BatchModifyTopicResultDTO();
obj.deserialize(params.Result[z]);
this.Result.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Data structure returned by monthly subscribed instance APIs
* @class
*/
class CreateInstancePreResp extends AbstractModel {
constructor(){
super();
/**
* Returned code. 0: Normal; other values: Error.
* @type {string || null}
*/
this.ReturnCode = null;
/**
* The message indicating whether the operation is successful.
* @type {string || null}
*/
this.ReturnMessage = null;
/**
* Data returned by the operation.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {CreateInstancePreData || null}
*/
this.Data = null;
/**
* Deletion time. This parameter has been deprecated and will be deleted. Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DeleteRouteTimestamp = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ReturnCode = 'ReturnCode' in params ? params.ReturnCode : null;
this.ReturnMessage = 'ReturnMessage' in params ? params.ReturnMessage : null;
if (params.Data) {
let obj = new CreateInstancePreData();
obj.deserialize(params.Data)
this.Data = obj;
}
this.DeleteRouteTimestamp = 'DeleteRouteTimestamp' in params ? params.DeleteRouteTimestamp : null;
}
}
/**
* Internal topic object of `GroupInfo`
* @class
*/
class GroupInfoTopics extends AbstractModel {
constructor(){
super();
/**
* Name of assigned topics
* @type {string || null}
*/
this.Topic = null;
/**
* Information of assigned partition
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<number> || null}
*/
this.Partitions = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Topic = 'Topic' in params ? params.Topic : null;
this.Partitions = 'Partitions' in params ? params.Partitions : null;
}
}
/**
* FetchMessageListByOffset request structure.
* @class
*/
class FetchMessageListByOffsetRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Topic name
* @type {string || null}
*/
this.Topic = null;
/**
* Partition ID
* @type {number || null}
*/
this.Partition = null;
/**
* Offset information
* @type {number || null}
*/
this.Offset = null;
/**
* The maximum number of messages that can be queried. Default value: 20. Maximum value: 20.
* @type {number || null}
*/
this.SinglePartitionRecordNumber = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.Topic = 'Topic' in params ? params.Topic : null;
this.Partition = 'Partition' in params ? params.Partition : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.SinglePartitionRecordNumber = 'SinglePartitionRecordNumber' in params ? params.SinglePartitionRecordNumber : null;
}
}
/**
* Region entity object
* @class
*/
class Region extends AbstractModel {
constructor(){
super();
/**
* Region ID
* @type {number || null}
*/
this.RegionId = null;
/**
* Region name
* @type {string || null}
*/
this.RegionName = null;
/**
* Area name
* @type {string || null}
*/
this.AreaName = null;
/**
* Region code
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.RegionCode = null;
/**
* Region code (v3)
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.RegionCodeV3 = null;
/**
* NONE: no special models are supported by default.\nCVM: the CVM type is supported.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Support = null;
/**
* Whether IPv6 is supported. `0` indicates no, and `1` indicates yes.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Ipv6 = null;
/**
* Whether cross-AZ clusters are supported.`0` indicates no, and `1` indicates yes.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MultiZone = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RegionId = 'RegionId' in params ? params.RegionId : null;
this.RegionName = 'RegionName' in params ? params.RegionName : null;
this.AreaName = 'AreaName' in params ? params.AreaName : null;
this.RegionCode = 'RegionCode' in params ? params.RegionCode : null;
this.RegionCodeV3 = 'RegionCodeV3' in params ? params.RegionCodeV3 : null;
this.Support = 'Support' in params ? params.Support : null;
this.Ipv6 = 'Ipv6' in params ? params.Ipv6 : null;
this.MultiZone = 'MultiZone' in params ? params.MultiZone : null;
}
}
/**
* ModifyInstancePre request structure.
* @class
*/
class ModifyInstancePreRequest extends AbstractModel {
constructor(){
super();
/**
* Instance name.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Estimated disk capacity, which can be increased by increment.
* @type {number || null}
*/
this.DiskSize = null;
/**
* Estimated bandwidth, which can be increased by increment.
* @type {number || null}
*/
this.BandWidth = null;
/**
* Estimated partition count, which can be increased by increment.
* @type {number || null}
*/
this.Partition = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
this.BandWidth = 'BandWidth' in params ? params.BandWidth : null;
this.Partition = 'Partition' in params ? params.Partition : null;
}
}
/**
* CreateAclRule request structure.
* @class
*/
class CreateAclRuleRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* ACL resource type. Currently, the only valid value is `Topic`.
* @type {string || null}
*/
this.ResourceType = null;
/**
* Matching type. Valid values: `PREFIXED`(match by prefix), `PRESET` (match by preset policy).
* @type {string || null}
*/
this.PatternType = null;
/**
* Rule name
* @type {string || null}
*/
this.RuleName = null;
/**
* ACL rule list
* @type {Array.<AclRuleInfo> || null}
*/
this.RuleList = null;
/**
* Prefix value for prefix match
* @type {string || null}
*/
this.Pattern = null;
/**
* A parameter used to specify whether the preset ACL rule is applied to new topics
* @type {number || null}
*/
this.IsApplied = null;
/**
* Remarks for ACL rules
* @type {string || null}
*/
this.Comment = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.ResourceType = 'ResourceType' in params ? params.ResourceType : null;
this.PatternType = 'PatternType' in params ? params.PatternType : null;
this.RuleName = 'RuleName' in params ? params.RuleName : null;
if (params.RuleList) {
this.RuleList = new Array();
for (let z in params.RuleList) {
let obj = new AclRuleInfo();
obj.deserialize(params.RuleList[z]);
this.RuleList.push(obj);
}
}
this.Pattern = 'Pattern' in params ? params.Pattern : null;
this.IsApplied = 'IsApplied' in params ? params.IsApplied : null;
this.Comment = 'Comment' in params ? params.Comment : null;
}
}
/**
* DescribeInstancesDetail response structure.
* @class
*/
class DescribeInstancesDetailResponse extends AbstractModel {
constructor(){
super();
/**
* Returned result object of instance details
* @type {InstanceDetailResponse || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new InstanceDetailResponse();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Data returned by the `CreateInstancePre` API.
* @class
*/
class CreateInstancePreData extends AbstractModel {
constructor(){
super();
/**
* The value returned by `CreateInstancePre` is 0, which is fixed and cannot be used as the query condition of `CheckTaskStatus`. It is only used to ensure the consistency with the backend data structure.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.FlowId = null;
/**
* Order number list.
Note: This field may return `null`, indicating that no valid values can be obtained.
* @type {Array.<string> || null}
*/
this.DealNames = null;
/**
* Instance ID. When multiple instances are purchased, the ID of the first one is returned by default . Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Mapping between orders and the purchased instances. Note: This field may return null, indicating that no valid values can be obtained.
* @type {Array.<DealInstanceDTO> || null}
*/
this.DealNameInstanceIdMapping = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FlowId = 'FlowId' in params ? params.FlowId : null;
this.DealNames = 'DealNames' in params ? params.DealNames : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
if (params.DealNameInstanceIdMapping) {
this.DealNameInstanceIdMapping = new Array();
for (let z in params.DealNameInstanceIdMapping) {
let obj = new DealInstanceDTO();
obj.deserialize(params.DealNameInstanceIdMapping[z]);
this.DealNameInstanceIdMapping.push(obj);
}
}
}
}
/**
* Output parameters of ACL rule list APIs
* @class
*/
class AclRule extends AbstractModel {
constructor(){
super();
/**
* ACL rule name.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.RuleName = null;
/**
* Instance ID.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Matching type. Currently, only prefix match is supported. Enumerated value list: PREFIXED
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.PatternType = null;
/**
* Prefix value for prefix match.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Pattern = null;
/**
* ACL resource type. Only “Topic” is supported. Enumerated value list: Topic.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ResourceType = null;
/**
* ACL information contained in the rule.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.AclList = null;
/**
* Creation time of the rule.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.CreateTimeStamp = null;
/**
* A parameter used to specify whether the preset ACL rule is applied to new topics.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.IsApplied = null;
/**
* Rule update time.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.UpdateTimeStamp = null;
/**
* Remarks of the rule.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Comment = null;
/**
* One of the corresponding topic names that is displayed.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TopicName = null;
/**
* The number of topics that apply this ACL rule.
Note: `null` may be returned for this field, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.TopicCount = null;
/**
* Name of rule type.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.PatternTypeTitle = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RuleName = 'RuleName' in params ? params.RuleName : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.PatternType = 'PatternType' in params ? params.PatternType : null;
this.Pattern = 'Pattern' in params ? params.Pattern : null;
this.ResourceType = 'ResourceType' in params ? params.ResourceType : null;
this.AclList = 'AclList' in params ? params.AclList : null;
this.CreateTimeStamp = 'CreateTimeStamp' in params ? params.CreateTimeStamp : null;
this.IsApplied = 'IsApplied' in params ? params.IsApplied : null;
this.UpdateTimeStamp = 'UpdateTimeStamp' in params ? params.UpdateTimeStamp : null;
this.Comment = 'Comment' in params ? params.Comment : null;
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.TopicCount = 'TopicCount' in params ? params.TopicCount : null;
this.PatternTypeTitle = 'PatternTypeTitle' in params ? params.PatternTypeTitle : null;
}
}
/**
* DescribeAclRule request structure.
* @class
*/
class DescribeAclRuleRequest extends AbstractModel {
constructor(){
super();
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* ACL rule name
* @type {string || null}
*/
this.RuleName = null;
/**
* ACL rule matching type
* @type {string || null}
*/
this.PatternType = null;
/**
* Whether to read simplified ACL rules
* @type {boolean || null}
*/
this.IsSimplified = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.RuleName = 'RuleName' in params ? params.RuleName : null;
this.PatternType = 'PatternType' in params ? params.PatternType : null;
this.IsSimplified = 'IsSimplified' in params ? params.IsSimplified : null;
}
}
/**
* DescribeACL response structure.
* @class
*/
class DescribeACLResponse extends AbstractModel {
constructor(){
super();
/**
* Returned ACL result set object
* @type {AclResponse || null}
*/
this.Result = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Result) {
let obj = new AclResponse();
obj.deserialize(params.Result)
this.Result = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Dynamic disk expansion configuration
* @class
*/
class DynamicDiskConfig extends AbstractModel {
constructor(){
super();
/**
* Whether to enable dynamic disk expansion configuration. `0`: disable, `1`: enable.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Enable = null;
/**
* Percentage of dynamic disk expansion each time.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.StepForwardPercentage = null;
/**
* Disk quota threshold (in percentage) for triggering the automatic disk expansion event.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.DiskQuotaPercentage = null;
/**
* Max disk space in GB.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxDiskSpace = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Enable = 'Enable' in params ? params.Enable : null;
this.StepForwardPercentage = 'StepForwardPercentage' in params ? params.StepForwardPercentage : null;
this.DiskQuotaPercentage = 'DiskQuotaPercentage' in params ? params.DiskQuotaPercentage : null;
this.MaxDiskSpace = 'MaxDiskSpace' in params ? params.MaxDiskSpace : null;
}
}
/**
* InquireCkafkaPrice request structure.
* @class
*/
class InquireCkafkaPriceRequest extends AbstractModel {
constructor(){
super();
/**
* `standard`: Standard Edition; `profession`: Pro Edition
* @type {string || null}
*/
this.InstanceType = null;
/**
* Billing mode for instance purchase/renewal. If this parameter is left empty when you purchase an instance, the fees for one month under the monthly subscription mode will be displayed by default.
* @type {InstanceChargeParam || null}
*/
this.InstanceChargeParam = null;
/**
* The number of instances to be purchased or renewed. If this parameter is left empty, the default value is `1`.
* @type {number || null}
*/
this.InstanceNum = null;
/**
* Private network bandwidth in MB/sec, which is required when you purchase an instance.
* @type {number || null}
*/
this.Bandwidth = null;
/**
* Disk type and size, which is required when you purchase an instance.
* @type {InquiryDiskParam || null}
*/
this.InquiryDiskParam = null;