AWS SDK for C++  0.14.3
AWS SDK for C++
VaultNotificationConfig.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Json
25 {
26  class JsonValue;
27 } // namespace Json
28 } // namespace Utils
29 namespace Glacier
30 {
31 namespace Model
32 {
33 
38  {
39  public:
42  VaultNotificationConfig& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
43  Aws::Utils::Json::JsonValue Jsonize() const;
44 
49  inline const Aws::String& GetSNSTopic() const{ return m_sNSTopic; }
50 
55  inline void SetSNSTopic(const Aws::String& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = value; }
56 
61  inline void SetSNSTopic(Aws::String&& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = value; }
62 
67  inline void SetSNSTopic(const char* value) { m_sNSTopicHasBeenSet = true; m_sNSTopic.assign(value); }
68 
73  inline VaultNotificationConfig& WithSNSTopic(const Aws::String& value) { SetSNSTopic(value); return *this;}
74 
79  inline VaultNotificationConfig& WithSNSTopic(Aws::String&& value) { SetSNSTopic(value); return *this;}
80 
85  inline VaultNotificationConfig& WithSNSTopic(const char* value) { SetSNSTopic(value); return *this;}
86 
91  inline const Aws::Vector<Aws::String>& GetEvents() const{ return m_events; }
92 
97  inline void SetEvents(const Aws::Vector<Aws::String>& value) { m_eventsHasBeenSet = true; m_events = value; }
98 
103  inline void SetEvents(Aws::Vector<Aws::String>&& value) { m_eventsHasBeenSet = true; m_events = value; }
104 
109  inline VaultNotificationConfig& WithEvents(const Aws::Vector<Aws::String>& value) { SetEvents(value); return *this;}
110 
115  inline VaultNotificationConfig& WithEvents(Aws::Vector<Aws::String>&& value) { SetEvents(value); return *this;}
116 
121  inline VaultNotificationConfig& AddEvents(const Aws::String& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
122 
127  inline VaultNotificationConfig& AddEvents(Aws::String&& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
128 
133  inline VaultNotificationConfig& AddEvents(const char* value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
134 
135  private:
136  Aws::String m_sNSTopic;
137  bool m_sNSTopicHasBeenSet;
138  Aws::Vector<Aws::String> m_events;
139  bool m_eventsHasBeenSet;
140  };
141 
142 } // namespace Model
143 } // namespace Glacier
144 } // namespace Aws
const Aws::Vector< Aws::String > & GetEvents() const
VaultNotificationConfig & WithEvents(Aws::Vector< Aws::String > &&value)
VaultNotificationConfig & WithSNSTopic(const char *value)
void SetEvents(const Aws::Vector< Aws::String > &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
VaultNotificationConfig & AddEvents(const Aws::String &value)
void SetEvents(Aws::Vector< Aws::String > &&value)
VaultNotificationConfig & WithEvents(const Aws::Vector< Aws::String > &value)
VaultNotificationConfig & AddEvents(Aws::String &&value)
VaultNotificationConfig & WithSNSTopic(Aws::String &&value)
#define AWS_GLACIER_API
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
VaultNotificationConfig & WithSNSTopic(const Aws::String &value)
VaultNotificationConfig & AddEvents(const char *value)
JSON (JavaScript Object Notation).