/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a vault's notification configuration.See Also:
* AWS
* API Reference
The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline const Aws::String& GetSNSTopic() const{ return m_sNSTopic; } /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline bool SNSTopicHasBeenSet() const { return m_sNSTopicHasBeenSet; } /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline void SetSNSTopic(const Aws::String& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = value; } /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline void SetSNSTopic(Aws::String&& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = std::move(value); } /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline void SetSNSTopic(const char* value) { m_sNSTopicHasBeenSet = true; m_sNSTopic.assign(value); } /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline VaultNotificationConfig& WithSNSTopic(const Aws::String& value) { SetSNSTopic(value); return *this;} /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline VaultNotificationConfig& WithSNSTopic(Aws::String&& value) { SetSNSTopic(std::move(value)); return *this;} /** *The Amazon Simple Notification Service (Amazon SNS) topic Amazon Resource * Name (ARN).
*/ inline VaultNotificationConfig& WithSNSTopic(const char* value) { SetSNSTopic(value); return *this;} /** *A list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline const Aws::VectorA list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; } /** *A list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline void SetEvents(const Aws::VectorA list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline void SetEvents(Aws::VectorA list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline VaultNotificationConfig& WithEvents(const Aws::VectorA list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline VaultNotificationConfig& WithEvents(Aws::VectorA list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline VaultNotificationConfig& AddEvents(const Aws::String& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } /** *A list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline VaultNotificationConfig& AddEvents(Aws::String&& value) { m_eventsHasBeenSet = true; m_events.push_back(std::move(value)); return *this; } /** *A list of one or more events for which Amazon S3 Glacier will send a * notification to the specified Amazon SNS topic.
*/ inline VaultNotificationConfig& AddEvents(const char* value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; } private: Aws::String m_sNSTopic; bool m_sNSTopicHasBeenSet = false; Aws::Vector