feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,643 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/pinpoint/Pinpoint_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/pinpoint/model/TemplateType.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Pinpoint
{
namespace Model
{
/**
* <p>Provides information about the content and settings for a message template
* that can be used in text messages that are sent through the SMS
* channel.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/SMSTemplateResponse">AWS
* API Reference</a></p>
*/
class AWS_PINPOINT_API SMSTemplateResponse
{
public:
SMSTemplateResponse();
SMSTemplateResponse(Aws::Utils::Json::JsonView jsonValue);
SMSTemplateResponse& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline SMSTemplateResponse& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline SMSTemplateResponse& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) of the message template.</p>
*/
inline SMSTemplateResponse& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline const Aws::String& GetBody() const{ return m_body; }
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline bool BodyHasBeenSet() const { return m_bodyHasBeenSet; }
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline void SetBody(const Aws::String& value) { m_bodyHasBeenSet = true; m_body = value; }
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline void SetBody(Aws::String&& value) { m_bodyHasBeenSet = true; m_body = std::move(value); }
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline void SetBody(const char* value) { m_bodyHasBeenSet = true; m_body.assign(value); }
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline SMSTemplateResponse& WithBody(const Aws::String& value) { SetBody(value); return *this;}
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline SMSTemplateResponse& WithBody(Aws::String&& value) { SetBody(std::move(value)); return *this;}
/**
* <p>The message body that's used in text messages that are based on the message
* template.</p>
*/
inline SMSTemplateResponse& WithBody(const char* value) { SetBody(value); return *this;}
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline const Aws::String& GetCreationDate() const{ return m_creationDate; }
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; }
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline void SetCreationDate(const Aws::String& value) { m_creationDateHasBeenSet = true; m_creationDate = value; }
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline void SetCreationDate(Aws::String&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); }
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline void SetCreationDate(const char* value) { m_creationDateHasBeenSet = true; m_creationDate.assign(value); }
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline SMSTemplateResponse& WithCreationDate(const Aws::String& value) { SetCreationDate(value); return *this;}
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline SMSTemplateResponse& WithCreationDate(Aws::String&& value) { SetCreationDate(std::move(value)); return *this;}
/**
* <p>The date, in ISO 8601 format, when the message template was created.</p>
*/
inline SMSTemplateResponse& WithCreationDate(const char* value) { SetCreationDate(value); return *this;}
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline const Aws::String& GetDefaultSubstitutions() const{ return m_defaultSubstitutions; }
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline bool DefaultSubstitutionsHasBeenSet() const { return m_defaultSubstitutionsHasBeenSet; }
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline void SetDefaultSubstitutions(const Aws::String& value) { m_defaultSubstitutionsHasBeenSet = true; m_defaultSubstitutions = value; }
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline void SetDefaultSubstitutions(Aws::String&& value) { m_defaultSubstitutionsHasBeenSet = true; m_defaultSubstitutions = std::move(value); }
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline void SetDefaultSubstitutions(const char* value) { m_defaultSubstitutionsHasBeenSet = true; m_defaultSubstitutions.assign(value); }
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline SMSTemplateResponse& WithDefaultSubstitutions(const Aws::String& value) { SetDefaultSubstitutions(value); return *this;}
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline SMSTemplateResponse& WithDefaultSubstitutions(Aws::String&& value) { SetDefaultSubstitutions(std::move(value)); return *this;}
/**
* <p>The JSON object that specifies the default values that are used for message
* variables in the message template. This object is a set of key-value pairs. Each
* key defines a message variable in the template. The corresponding value defines
* the default value for that variable.</p>
*/
inline SMSTemplateResponse& WithDefaultSubstitutions(const char* value) { SetDefaultSubstitutions(value); return *this;}
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline const Aws::String& GetLastModifiedDate() const{ return m_lastModifiedDate; }
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; }
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline void SetLastModifiedDate(const Aws::String& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; }
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline void SetLastModifiedDate(Aws::String&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); }
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline void SetLastModifiedDate(const char* value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate.assign(value); }
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline SMSTemplateResponse& WithLastModifiedDate(const Aws::String& value) { SetLastModifiedDate(value); return *this;}
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline SMSTemplateResponse& WithLastModifiedDate(Aws::String&& value) { SetLastModifiedDate(std::move(value)); return *this;}
/**
* <p>The date, in ISO 8601 format, when the message template was last
* modified.</p>
*/
inline SMSTemplateResponse& WithLastModifiedDate(const char* value) { SetLastModifiedDate(value); return *this;}
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline const Aws::String& GetRecommenderId() const{ return m_recommenderId; }
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline bool RecommenderIdHasBeenSet() const { return m_recommenderIdHasBeenSet; }
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline void SetRecommenderId(const Aws::String& value) { m_recommenderIdHasBeenSet = true; m_recommenderId = value; }
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline void SetRecommenderId(Aws::String&& value) { m_recommenderIdHasBeenSet = true; m_recommenderId = std::move(value); }
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline void SetRecommenderId(const char* value) { m_recommenderIdHasBeenSet = true; m_recommenderId.assign(value); }
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline SMSTemplateResponse& WithRecommenderId(const Aws::String& value) { SetRecommenderId(value); return *this;}
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline SMSTemplateResponse& WithRecommenderId(Aws::String&& value) { SetRecommenderId(std::move(value)); return *this;}
/**
* <p>The unique identifier for the recommender model that's used by the message
* template.</p>
*/
inline SMSTemplateResponse& WithRecommenderId(const char* value) { SetRecommenderId(value); return *this;}
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }
/**
* <p>A string-to-string map of key-value pairs that identifies the tags that are
* associated with the message template. Each tag consists of a required tag key
* and an associated tag value.</p>
*/
inline SMSTemplateResponse& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }
/**
* <p>The custom description of the message template.</p>
*/
inline const Aws::String& GetTemplateDescription() const{ return m_templateDescription; }
/**
* <p>The custom description of the message template.</p>
*/
inline bool TemplateDescriptionHasBeenSet() const { return m_templateDescriptionHasBeenSet; }
/**
* <p>The custom description of the message template.</p>
*/
inline void SetTemplateDescription(const Aws::String& value) { m_templateDescriptionHasBeenSet = true; m_templateDescription = value; }
/**
* <p>The custom description of the message template.</p>
*/
inline void SetTemplateDescription(Aws::String&& value) { m_templateDescriptionHasBeenSet = true; m_templateDescription = std::move(value); }
/**
* <p>The custom description of the message template.</p>
*/
inline void SetTemplateDescription(const char* value) { m_templateDescriptionHasBeenSet = true; m_templateDescription.assign(value); }
/**
* <p>The custom description of the message template.</p>
*/
inline SMSTemplateResponse& WithTemplateDescription(const Aws::String& value) { SetTemplateDescription(value); return *this;}
/**
* <p>The custom description of the message template.</p>
*/
inline SMSTemplateResponse& WithTemplateDescription(Aws::String&& value) { SetTemplateDescription(std::move(value)); return *this;}
/**
* <p>The custom description of the message template.</p>
*/
inline SMSTemplateResponse& WithTemplateDescription(const char* value) { SetTemplateDescription(value); return *this;}
/**
* <p>The name of the message template.</p>
*/
inline const Aws::String& GetTemplateName() const{ return m_templateName; }
/**
* <p>The name of the message template.</p>
*/
inline bool TemplateNameHasBeenSet() const { return m_templateNameHasBeenSet; }
/**
* <p>The name of the message template.</p>
*/
inline void SetTemplateName(const Aws::String& value) { m_templateNameHasBeenSet = true; m_templateName = value; }
/**
* <p>The name of the message template.</p>
*/
inline void SetTemplateName(Aws::String&& value) { m_templateNameHasBeenSet = true; m_templateName = std::move(value); }
/**
* <p>The name of the message template.</p>
*/
inline void SetTemplateName(const char* value) { m_templateNameHasBeenSet = true; m_templateName.assign(value); }
/**
* <p>The name of the message template.</p>
*/
inline SMSTemplateResponse& WithTemplateName(const Aws::String& value) { SetTemplateName(value); return *this;}
/**
* <p>The name of the message template.</p>
*/
inline SMSTemplateResponse& WithTemplateName(Aws::String&& value) { SetTemplateName(std::move(value)); return *this;}
/**
* <p>The name of the message template.</p>
*/
inline SMSTemplateResponse& WithTemplateName(const char* value) { SetTemplateName(value); return *this;}
/**
* <p>The type of channel that the message template is designed for. For an SMS
* template, this value is SMS.</p>
*/
inline const TemplateType& GetTemplateType() const{ return m_templateType; }
/**
* <p>The type of channel that the message template is designed for. For an SMS
* template, this value is SMS.</p>
*/
inline bool TemplateTypeHasBeenSet() const { return m_templateTypeHasBeenSet; }
/**
* <p>The type of channel that the message template is designed for. For an SMS
* template, this value is SMS.</p>
*/
inline void SetTemplateType(const TemplateType& value) { m_templateTypeHasBeenSet = true; m_templateType = value; }
/**
* <p>The type of channel that the message template is designed for. For an SMS
* template, this value is SMS.</p>
*/
inline void SetTemplateType(TemplateType&& value) { m_templateTypeHasBeenSet = true; m_templateType = std::move(value); }
/**
* <p>The type of channel that the message template is designed for. For an SMS
* template, this value is SMS.</p>
*/
inline SMSTemplateResponse& WithTemplateType(const TemplateType& value) { SetTemplateType(value); return *this;}
/**
* <p>The type of channel that the message template is designed for. For an SMS
* template, this value is SMS.</p>
*/
inline SMSTemplateResponse& WithTemplateType(TemplateType&& value) { SetTemplateType(std::move(value)); return *this;}
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline const Aws::String& GetVersion() const{ return m_version; }
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; }
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline void SetVersion(const Aws::String& value) { m_versionHasBeenSet = true; m_version = value; }
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline void SetVersion(Aws::String&& value) { m_versionHasBeenSet = true; m_version = std::move(value); }
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline void SetVersion(const char* value) { m_versionHasBeenSet = true; m_version.assign(value); }
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline SMSTemplateResponse& WithVersion(const Aws::String& value) { SetVersion(value); return *this;}
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline SMSTemplateResponse& WithVersion(Aws::String&& value) { SetVersion(std::move(value)); return *this;}
/**
* <p>The unique identifier, as an integer, for the active version of the message
* template, or the version of the template that you specified by using the version
* parameter in your request.</p>
*/
inline SMSTemplateResponse& WithVersion(const char* value) { SetVersion(value); return *this;}
private:
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::String m_body;
bool m_bodyHasBeenSet;
Aws::String m_creationDate;
bool m_creationDateHasBeenSet;
Aws::String m_defaultSubstitutions;
bool m_defaultSubstitutionsHasBeenSet;
Aws::String m_lastModifiedDate;
bool m_lastModifiedDateHasBeenSet;
Aws::String m_recommenderId;
bool m_recommenderIdHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_tags;
bool m_tagsHasBeenSet;
Aws::String m_templateDescription;
bool m_templateDescriptionHasBeenSet;
Aws::String m_templateName;
bool m_templateNameHasBeenSet;
TemplateType m_templateType;
bool m_templateTypeHasBeenSet;
Aws::String m_version;
bool m_versionHasBeenSet;
};
} // namespace Model
} // namespace Pinpoint
} // namespace Aws