tencentcloud-sdk-nodejs-intl-en
Version:
1,641 lines (1,386 loc) • 71.9 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");
/**
* Field for displaying returned topic information
* @class
*/
class TopicSet extends AbstractModel {
constructor(){
super();
/**
* TopicId
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TopicId = null;
/**
* TopicName
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TopicName = null;
/**
* MsgRetentionSeconds
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MsgRetentionSeconds = null;
/**
* MaxMsgSize
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxMsgSize = null;
/**
* Qps
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Qps = null;
/**
* FilterType
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.FilterType = null;
/**
* CreateTime
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.CreateTime = null;
/**
* LastModifyTime
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.LastModifyTime = null;
/**
* MsgCount
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MsgCount = null;
/**
* CreateUin
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.CreateUin = null;
/**
* Tags
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<Tag> || null}
*/
this.Tags = null;
/**
* Whether to enable message trace for a topic. true: yes, false: no
Note: this field may return null, indicating that no valid values can be obtained.
* @type {boolean || null}
*/
this.Trace = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicId = 'TopicId' in params ? params.TopicId : null;
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.MsgRetentionSeconds = 'MsgRetentionSeconds' in params ? params.MsgRetentionSeconds : null;
this.MaxMsgSize = 'MaxMsgSize' in params ? params.MaxMsgSize : null;
this.Qps = 'Qps' in params ? params.Qps : null;
this.FilterType = 'FilterType' in params ? params.FilterType : null;
this.CreateTime = 'CreateTime' in params ? params.CreateTime : null;
this.LastModifyTime = 'LastModifyTime' in params ? params.LastModifyTime : null;
this.MsgCount = 'MsgCount' in params ? params.MsgCount : null;
this.CreateUin = 'CreateUin' in params ? params.CreateUin : 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);
}
}
this.Trace = 'Trace' in params ? params.Trace : null;
}
}
/**
* RewindQueue request structure.
* @class
*/
class RewindQueueRequest extends AbstractModel {
constructor(){
super();
/**
* Queue name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.QueueName = null;
/**
* After this time is set, the `(Batch)receiveMessage` API will consume the messages received after this timestamp in the order in which they are produced.
* @type {number || null}
*/
this.StartConsumeTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.QueueName = 'QueueName' in params ? params.QueueName : null;
this.StartConsumeTime = 'StartConsumeTime' in params ? params.StartConsumeTime : null;
}
}
/**
* DescribeSubscriptionDetail request structure.
* @class
*/
class DescribeSubscriptionDetailRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.TopicName = null;
/**
* Starting position of topic list to be returned on the current page in case of paginated return. If a value is entered, `limit` is required. If this parameter is left empty, 0 will be used by default
* @type {number || null}
*/
this.Offset = null;
/**
* Number of topics to be returned per page in case of paginated return. If this parameter is not passed in, 20 will be used by default. Maximum value: 50.
* @type {number || null}
*/
this.Limit = null;
/**
* Filter parameter. Currently, only filtering by `SubscriptionName` is supported, and only one keyword is allowed.
* @type {Array.<Filter> || null}
*/
this.Filters = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
if (params.Filters) {
this.Filters = new Array();
for (let z in params.Filters) {
let obj = new Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
}
}
/**
* ModifyQueueAttribute response structure.
* @class
*/
class ModifyQueueAttributeResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateQueue request structure.
* @class
*/
class CreateQueueRequest extends AbstractModel {
constructor(){
super();
/**
* Queue name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.QueueName = null;
/**
* Maximum number of heaped messages. The value range is 1,000,000-10,000,000 during the beta test and can be 1,000,000-1,000,000,000 after the product is officially released. The default value is 10,000,000 during the beta test and will be 100,000,000 after the product is officially released.
* @type {number || null}
*/
this.MaxMsgHeapNum = null;
/**
* Long polling wait time for message reception. Value range: 0-30 seconds. Default value: 0.
* @type {number || null}
*/
this.PollingWaitSeconds = null;
/**
* Message visibility timeout period. Value range: 1-43200 seconds (i.e., 12 hours). Default value: 30.
* @type {number || null}
*/
this.VisibilityTimeout = null;
/**
* Maximum message length. Value range: 1024-65536 bytes (i.e., 1-64 KB). Default value: 65536.
* @type {number || null}
*/
this.MaxMsgSize = null;
/**
* Message retention period. Value range: 60-1296000 seconds (i.e., 1 minute-15 days). Default value: 345600 (i.e., 4 days).
* @type {number || null}
*/
this.MsgRetentionSeconds = null;
/**
* Whether to enable the message rewinding feature for a queue. Value range: 0-msgRetentionSeconds, where 0 means not to enable this feature, while `msgRetentionSeconds` indicates that the maximum rewindable period is the message retention period of the queue.
* @type {number || null}
*/
this.RewindSeconds = null;
/**
* 1: transaction queue, 0: general queue
* @type {number || null}
*/
this.Transaction = null;
/**
* First lookback interval
* @type {number || null}
*/
this.FirstQueryInterval = null;
/**
* Maximum number of lookbacks
* @type {number || null}
*/
this.MaxQueryCount = null;
/**
* Dead letter queue name
* @type {string || null}
*/
this.DeadLetterQueueName = null;
/**
* Dead letter policy. 0: message has been consumed multiple times but not deleted, 1: `Time-To-Live` has elapsed
* @type {number || null}
*/
this.Policy = null;
/**
* Maximum receipt times. Value range: 1-1000
* @type {number || null}
*/
this.MaxReceiveCount = null;
/**
* Maximum period in seconds before an unconsumed message expires, which is required if `policy` is 1. Value range: 300-43200. This value should be smaller than `msgRetentionSeconds` (maximum message retention period)
* @type {number || null}
*/
this.MaxTimeToLive = null;
/**
* Whether to enable message trace. true: yes, false: no. If this field is not set, the feature will not be enabled
* @type {boolean || null}
*/
this.Trace = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.QueueName = 'QueueName' in params ? params.QueueName : null;
this.MaxMsgHeapNum = 'MaxMsgHeapNum' in params ? params.MaxMsgHeapNum : null;
this.PollingWaitSeconds = 'PollingWaitSeconds' in params ? params.PollingWaitSeconds : null;
this.VisibilityTimeout = 'VisibilityTimeout' in params ? params.VisibilityTimeout : null;
this.MaxMsgSize = 'MaxMsgSize' in params ? params.MaxMsgSize : null;
this.MsgRetentionSeconds = 'MsgRetentionSeconds' in params ? params.MsgRetentionSeconds : null;
this.RewindSeconds = 'RewindSeconds' in params ? params.RewindSeconds : null;
this.Transaction = 'Transaction' in params ? params.Transaction : null;
this.FirstQueryInterval = 'FirstQueryInterval' in params ? params.FirstQueryInterval : null;
this.MaxQueryCount = 'MaxQueryCount' in params ? params.MaxQueryCount : null;
this.DeadLetterQueueName = 'DeadLetterQueueName' in params ? params.DeadLetterQueueName : null;
this.Policy = 'Policy' in params ? params.Policy : null;
this.MaxReceiveCount = 'MaxReceiveCount' in params ? params.MaxReceiveCount : null;
this.MaxTimeToLive = 'MaxTimeToLive' in params ? params.MaxTimeToLive : null;
this.Trace = 'Trace' in params ? params.Trace : null;
}
}
/**
* ModifySubscriptionAttribute response structure.
* @class
*/
class ModifySubscriptionAttributeResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DeadLetterPolicy
* @class
*/
class DeadLetterPolicy extends AbstractModel {
constructor(){
super();
/**
* DeadLetterQueueName
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DeadLetterQueueName = null;
/**
* DeadLetterQueue
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DeadLetterQueue = null;
/**
* Policy
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Policy = null;
/**
* MaxTimeToLive
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxTimeToLive = null;
/**
* MaxReceiveCount
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxReceiveCount = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DeadLetterQueueName = 'DeadLetterQueueName' in params ? params.DeadLetterQueueName : null;
this.DeadLetterQueue = 'DeadLetterQueue' in params ? params.DeadLetterQueue : null;
this.Policy = 'Policy' in params ? params.Policy : null;
this.MaxTimeToLive = 'MaxTimeToLive' in params ? params.MaxTimeToLive : null;
this.MaxReceiveCount = 'MaxReceiveCount' in params ? params.MaxReceiveCount : null;
}
}
/**
* ModifyTopicAttribute response structure.
* @class
*/
class ModifyTopicAttributeResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DeleteSubscribe request structure.
* @class
*/
class DeleteSubscribeRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.TopicName = null;
/**
* Subscription name, which is unique in the same topic under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.SubscriptionName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.SubscriptionName = 'SubscriptionName' in params ? params.SubscriptionName : null;
}
}
/**
* DescribeSubscriptionDetail response structure.
* @class
*/
class DescribeSubscriptionDetailResponse extends AbstractModel {
constructor(){
super();
/**
* Total number
* @type {number || null}
*/
this.TotalCount = null;
/**
* Subscription attribute set
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<Subscription> || null}
*/
this.SubscriptionSet = null;
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.SubscriptionSet) {
this.SubscriptionSet = new Array();
for (let z in params.SubscriptionSet) {
let obj = new Subscription();
obj.deserialize(params.SubscriptionSet[z]);
this.SubscriptionSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateSubscribe request structure.
* @class
*/
class CreateSubscribeRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.TopicName = null;
/**
* Subscription name, which is unique in the same topic under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.SubscriptionName = null;
/**
* Subscription protocol. Currently, two protocols are supported: http and queue. To use the `http` protocol, you need to build your own web server to receive messages. With the `queue` protocol, messages are automatically pushed to a CMQ queue and you can pull them concurrently.
* @type {string || null}
*/
this.Protocol = null;
/**
* `Endpoint` for notification receipt, which is distinguished by `Protocol`. For `http`, `Endpoint` must begin with `http://` and `host` can be a domain name or IP. For `Queue`, enter `QueueName`. Please note that currently the push service cannot push messages to a VPC; therefore, if a VPC domain name or address is entered for `Endpoint`, pushed messages will not be received. Currently, messages can be pushed only to the public network and basic network.
* @type {string || null}
*/
this.Endpoint = null;
/**
* CMQ push server retry policy in case an error occurs while pushing a message to `Endpoint`. Valid values: 1. BACKOFF_RETRY: backoff retry, which is to retry at a fixed interval, discard the message after a certain number of retries, and continue to push the next message; 2. EXPONENTIAL_DECAY_RETRY: exponential decay retry, which is to retry at an exponentially increasing interval, such as 1s, 2s, 4s, 8s, and so on. As a message can be retained in a topic for one day, failed messages will be discarded at most after one day of retry. Default value: EXPONENTIAL_DECAY_RETRY.
* @type {string || null}
*/
this.NotifyStrategy = null;
/**
* Message body tag (used for message filtering). The number of tags cannot exceed 5, and each tag can contain up to 16 characters. It is used in conjunction with the `MsgTag` parameter of `(Batch)PublishMessage`. Rules: 1. If `FilterTag` is not set, no matter whether `MsgTag` is set, the subscription will receive all messages published to the topic; 2. If the `FilterTag` array has a value, only when at least one of the values in the array also exists in the `MsgTag` array (i.e., `FilterTag` and `MsgTag` have an intersection) can the subscription receive messages published to the topic; 3. If the `FilterTag` array has a value, but `MsgTag` is not set, then no message published to the topic will be received, which can be considered as a special case of rule 2 as `FilterTag` and `MsgTag` do not intersect in this case. The overall design idea of rules is based on the intention of the subscriber.
* @type {Array.<string> || null}
*/
this.FilterTag = null;
/**
* The number of `BindingKey` cannot exceed 5, and the length of each `BindingKey` cannot exceed 64 bytes. This field indicates the filtering policy for subscribing to and receiving messages. Each `BindingKey` can contain up to 15 `.`, i.e., up to 16 phrases.
* @type {Array.<string> || null}
*/
this.BindingKey = null;
/**
* Push content format. Valid values: 1. JSON, 2. SIMPLIFIED, i.e., the raw format. If `Protocol` is `queue`, this value must be `SIMPLIFIED`. If `Protocol` is `http`, both options are acceptable, and the default value is `JSON`.
* @type {string || null}
*/
this.NotifyContentFormat = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.SubscriptionName = 'SubscriptionName' in params ? params.SubscriptionName : null;
this.Protocol = 'Protocol' in params ? params.Protocol : null;
this.Endpoint = 'Endpoint' in params ? params.Endpoint : null;
this.NotifyStrategy = 'NotifyStrategy' in params ? params.NotifyStrategy : null;
this.FilterTag = 'FilterTag' in params ? params.FilterTag : null;
this.BindingKey = 'BindingKey' in params ? params.BindingKey : null;
this.NotifyContentFormat = 'NotifyContentFormat' in params ? params.NotifyContentFormat : null;
}
}
/**
* ClearQueue request structure.
* @class
*/
class ClearQueueRequest extends AbstractModel {
constructor(){
super();
/**
* Queue name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.QueueName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.QueueName = 'QueueName' in params ? params.QueueName : null;
}
}
/**
* CreateTopic response structure.
* @class
*/
class CreateTopicResponse extends AbstractModel {
constructor(){
super();
/**
* TopicName
* @type {string || null}
*/
this.TopicId = null;
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicId = 'TopicId' in params ? params.TopicId : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ClearSubscriptionFilterTags response structure.
* @class
*/
class ClearSubscriptionFilterTagsResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* UnbindDeadLetter response structure.
* @class
*/
class UnbindDeadLetterResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* TransactionPolicy
* @class
*/
class TransactionPolicy extends AbstractModel {
constructor(){
super();
/**
* FirstQueryInterval
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.FirstQueryInterval = null;
/**
* MaxQueryCount
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxQueryCount = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FirstQueryInterval = 'FirstQueryInterval' in params ? params.FirstQueryInterval : null;
this.MaxQueryCount = 'MaxQueryCount' in params ? params.MaxQueryCount : null;
}
}
/**
* DescribeTopicDetail request structure.
* @class
*/
class DescribeTopicDetailRequest extends AbstractModel {
constructor(){
super();
/**
* Starting position of queue list to be returned on the current page in case of paginated return. If a value is entered, `limit` is required. If this parameter is left empty, 0 will be used by default.
* @type {number || null}
*/
this.Offset = null;
/**
* Number of queues to be returned per page in case of paginated return. If this parameter is not passed in, 20 will be used by default. Maximum value: 50.
* @type {number || null}
*/
this.Limit = null;
/**
* Currently, only filtering by `TopicName` is supported, and only one filter value can be entered
* @type {Array.<Filter> || null}
*/
this.Filters = null;
/**
* Tag match
* @type {string || null}
*/
this.TagKey = null;
/**
* Exact match by `TopicName`
* @type {string || null}
*/
this.TopicName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
if (params.Filters) {
this.Filters = new Array();
for (let z in params.Filters) {
let obj = new Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
this.TagKey = 'TagKey' in params ? params.TagKey : null;
this.TopicName = 'TopicName' in params ? params.TopicName : null;
}
}
/**
* DeleteTopic request structure.
* @class
*/
class DeleteTopicRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.TopicName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
}
}
/**
* DescribeTopicDetail response structure.
* @class
*/
class DescribeTopicDetailResponse extends AbstractModel {
constructor(){
super();
/**
* TotalCount
* @type {number || null}
*/
this.TotalCount = null;
/**
* TopicSet
* @type {Array.<TopicSet> || null}
*/
this.TopicSet = null;
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.TopicSet) {
this.TopicSet = new Array();
for (let z in params.TopicSet) {
let obj = new TopicSet();
obj.deserialize(params.TopicSet[z]);
this.TopicSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeQueueDetail response structure.
* @class
*/
class DescribeQueueDetailResponse extends AbstractModel {
constructor(){
super();
/**
* Total number of queues
* @type {number || null}
*/
this.TotalCount = null;
/**
* Queue list
* @type {Array.<QueueSet> || null}
*/
this.QueueSet = null;
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.QueueSet) {
this.QueueSet = new Array();
for (let z in params.QueueSet) {
let obj = new QueueSet();
obj.deserialize(params.QueueSet[z]);
this.QueueSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* UnbindDeadLetter request structure.
* @class
*/
class UnbindDeadLetterRequest extends AbstractModel {
constructor(){
super();
/**
* Source queue name of dead letter policy. Calling this API will clear the dead letter queue policy of this queue.
* @type {string || null}
*/
this.QueueName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.QueueName = 'QueueName' in params ? params.QueueName : null;
}
}
/**
* CreateTopic request structure.
* @class
*/
class CreateTopicRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.TopicName = null;
/**
* Maximum message length. Value range: 1024-65536 bytes (i.e., 1-64 KB). Default value: 65536.
* @type {number || null}
*/
this.MaxMsgSize = null;
/**
* Message match policy for a specified topic.
* @type {number || null}
*/
this.FilterType = null;
/**
* Message retention period. Value range: 60-86400 seconds (i.e., 1 minute-1 day). Default value: 86400.
* @type {number || null}
*/
this.MsgRetentionSeconds = null;
/**
* Whether to enable message trace. true: yes, false: no. If this field is left empty, the feature will not be enabled.
* @type {boolean || null}
*/
this.Trace = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.MaxMsgSize = 'MaxMsgSize' in params ? params.MaxMsgSize : null;
this.FilterType = 'FilterType' in params ? params.FilterType : null;
this.MsgRetentionSeconds = 'MsgRetentionSeconds' in params ? params.MsgRetentionSeconds : null;
this.Trace = 'Trace' in params ? params.Trace : null;
}
}
/**
* DeleteQueue request structure.
* @class
*/
class DeleteQueueRequest extends AbstractModel {
constructor(){
super();
/**
* Queue name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.QueueName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.QueueName = 'QueueName' in params ? params.QueueName : null;
}
}
/**
* Filter parameter
* @class
*/
class Filter extends AbstractModel {
constructor(){
super();
/**
* Filter parameter name
* @type {string || null}
*/
this.Name = null;
/**
* Value
* @type {Array.<string> || null}
*/
this.Values = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Name = 'Name' in params ? params.Name : null;
this.Values = 'Values' in params ? params.Values : null;
}
}
/**
* DescribeDeadLetterSourceQueues response structure.
* @class
*/
class DescribeDeadLetterSourceQueuesResponse extends AbstractModel {
constructor(){
super();
/**
* Number of eligible queues
* @type {number || null}
*/
this.TotalCount = null;
/**
* Source queues of dead letter queue
* @type {Array.<DeadLetterSource> || null}
*/
this.QueueSet = null;
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
if (params.QueueSet) {
this.QueueSet = new Array();
for (let z in params.QueueSet) {
let obj = new DeadLetterSource();
obj.deserialize(params.QueueSet[z]);
this.QueueSet.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* RewindQueue response structure.
* @class
*/
class RewindQueueResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyTopicAttribute request structure.
* @class
*/
class ModifyTopicAttributeRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
this.TopicName = null;
/**
* Maximum message length. Value range: 1024-65536 bytes (i.e., 1-64 KB). Default value: 65536.
* @type {number || null}
*/
this.MaxMsgSize = null;
/**
* Message retention period. Value range: 60-86400 seconds (i.e., 1 minute-1 day). Default value: 86400.
* @type {number || null}
*/
this.MsgRetentionSeconds = null;
/**
* Whether to enable message trace. true: yes, false: no. If this field is left empty, the feature will not be enabled.
* @type {boolean || null}
*/
this.Trace = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TopicName = 'TopicName' in params ? params.TopicName : null;
this.MaxMsgSize = 'MaxMsgSize' in params ? params.MaxMsgSize : null;
this.MsgRetentionSeconds = 'MsgRetentionSeconds' in params ? params.MsgRetentionSeconds : null;
this.Trace = 'Trace' in params ? params.Trace : null;
}
}
/**
* DescribeQueueDetail request structure.
* @class
*/
class DescribeQueueDetailRequest extends AbstractModel {
constructor(){
super();
/**
* Starting position of queue list to be returned on the current page in case of paginated return. If a value is entered, `limit` is required. If this parameter is left empty, 0 will be used by default
* @type {number || null}
*/
this.Offset = null;
/**
* Number of queues to be returned per page in case of paginated return. If this parameter is not passed in, 20 will be used by default. Maximum value: 50.
* @type {number || null}
*/
this.Limit = null;
/**
* Filter parameter. Currently, filtering by `QueueName` is supported, and only one keyword is allowed
* @type {Array.<Filter> || null}
*/
this.Filters = null;
/**
* Tag search
* @type {string || null}
*/
this.TagKey = null;
/**
* Exact match by `QueueName`
* @type {string || null}
*/
this.QueueName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
if (params.Filters) {
this.Filters = new Array();
for (let z in params.Filters) {
let obj = new Filter();
obj.deserialize(params.Filters[z]);
this.Filters.push(obj);
}
}
this.TagKey = 'TagKey' in params ? params.TagKey : null;
this.QueueName = 'QueueName' in params ? params.QueueName : null;
}
}
/**
* Batch queue attribute information
* @class
*/
class QueueSet extends AbstractModel {
constructor(){
super();
/**
* QueueId
* @type {string || null}
*/
this.QueueId = null;
/**
* QueueName
* @type {string || null}
*/
this.QueueName = null;
/**
* Qps
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Qps = null;
/**
* Bps
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Bps = null;
/**
* MaxDelaySeconds
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxDelaySeconds = null;
/**
* MaxMsgHeapNum
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxMsgHeapNum = null;
/**
* PollingWaitSeconds
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.PollingWaitSeconds = null;
/**
* MsgRetentionSeconds
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MsgRetentionSeconds = null;
/**
* VisibilityTimeout
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.VisibilityTimeout = null;
/**
* MaxMsgSize
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxMsgSize = null;
/**
* RewindSeconds
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.RewindSeconds = null;
/**
* CreateTime
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.CreateTime = null;
/**
* LastModifyTime
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.LastModifyTime = null;
/**
* ActiveMsgNum
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.ActiveMsgNum = null;
/**
* InactiveMsgNum
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.InactiveMsgNum = null;
/**
* DelayMsgNum
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.DelayMsgNum = null;
/**
* RewindMsgNum
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.RewindMsgNum = null;
/**
* MinMsgTime
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MinMsgTime = null;
/**
* Transaction
Note: this field may return null, indicating that no valid values can be obtained.
* @type {boolean || null}
*/
this.Transaction = null;
/**
* DeadLetterSource
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<DeadLetterSource> || null}
*/
this.DeadLetterSource = null;
/**
* DeadLetterPolicy
Note: this field may return null, indicating that no valid values can be obtained.
* @type {DeadLetterPolicy || null}
*/
this.DeadLetterPolicy = null;
/**
* TransactionPolicy
Note: this field may return null, indicating that no valid values can be obtained.
* @type {TransactionPolicy || null}
*/
this.TransactionPolicy = null;
/**
* Creator `uin`
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.CreateUin = null;
/**
* Tag
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<Tag> || null}
*/
this.Tags = null;
/**
* Message trace flag. true: enabled, false: not enabled
Note: this field may return null, indicating that no valid values can be obtained.
* @type {boolean || null}
*/
this.Trace = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.QueueId = 'QueueId' in params ? params.QueueId : null;
this.QueueName = 'QueueName' in params ? params.QueueName : null;
this.Qps = 'Qps' in params ? params.Qps : null;
this.Bps = 'Bps' in params ? params.Bps : null;
this.MaxDelaySeconds = 'MaxDelaySeconds' in params ? params.MaxDelaySeconds : null;
this.MaxMsgHeapNum = 'MaxMsgHeapNum' in params ? params.MaxMsgHeapNum : null;
this.PollingWaitSeconds = 'PollingWaitSeconds' in params ? params.PollingWaitSeconds : null;
this.MsgRetentionSeconds = 'MsgRetentionSeconds' in params ? params.MsgRetentionSeconds : null;
this.VisibilityTimeout = 'VisibilityTimeout' in params ? params.VisibilityTimeout : null;
this.MaxMsgSize = 'MaxMsgSize' in params ? params.MaxMsgSize : null;
this.RewindSeconds = 'RewindSeconds' in params ? params.RewindSeconds : null;
this.CreateTime = 'CreateTime' in params ? params.CreateTime : null;
this.LastModifyTime = 'LastModifyTime' in params ? params.LastModifyTime : null;
this.ActiveMsgNum = 'ActiveMsgNum' in params ? params.ActiveMsgNum : null;
this.InactiveMsgNum = 'InactiveMsgNum' in params ? params.InactiveMsgNum : null;
this.DelayMsgNum = 'DelayMsgNum' in params ? params.DelayMsgNum : null;
this.RewindMsgNum = 'RewindMsgNum' in params ? params.RewindMsgNum : null;
this.MinMsgTime = 'MinMsgTime' in params ? params.MinMsgTime : null;
this.Transaction = 'Transaction' in params ? params.Transaction : null;
if (params.DeadLetterSource) {
this.DeadLetterSource = new Array();
for (let z in params.DeadLetterSource) {
let obj = new DeadLetterSource();
obj.deserialize(params.DeadLetterSource[z]);
this.DeadLetterSource.push(obj);
}
}
if (params.DeadLetterPolicy) {
let obj = new DeadLetterPolicy();
obj.deserialize(params.DeadLetterPolicy)
this.DeadLetterPolicy = obj;
}
if (params.TransactionPolicy) {
let obj = new TransactionPolicy();
obj.deserialize(params.TransactionPolicy)
this.TransactionPolicy = obj;
}
this.CreateUin = 'CreateUin' in params ? params.CreateUin : 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);
}
}
this.Trace = 'Trace' in params ? params.Trace : null;
}
}
/**
* DeleteTopic response structure.
* @class
*/
class DeleteTopicResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ClearSubscriptionFilterTags request structure.
* @class
*/
class ClearSubscriptionFilterTagsRequest extends AbstractModel {
constructor(){
super();
/**
* Topic name, which is unique under the same account in an individual region. It is a string of up to 64 characters, which must begin with a letter and can contain letters, digits, and dashes (`-`).
* @type {string || null}
*/
th