AWS SDK for C++  0.14.3
AWS SDK for C++
Notification.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
20 
21 namespace Aws
22 {
23 namespace Utils
24 {
25 namespace Json
26 {
27  class JsonValue;
28 } // namespace Json
29 } // namespace Utils
30 namespace Snowball
31 {
32 namespace Model
33 {
34 
46  {
47  public:
48  Notification();
49  Notification(const Aws::Utils::Json::JsonValue& jsonValue);
50  Notification& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
51  Aws::Utils::Json::JsonValue Jsonize() const;
52 
62  inline const Aws::String& GetSnsTopicARN() const{ return m_snsTopicARN; }
63 
73  inline void SetSnsTopicARN(const Aws::String& value) { m_snsTopicARNHasBeenSet = true; m_snsTopicARN = value; }
74 
84  inline void SetSnsTopicARN(Aws::String&& value) { m_snsTopicARNHasBeenSet = true; m_snsTopicARN = value; }
85 
95  inline void SetSnsTopicARN(const char* value) { m_snsTopicARNHasBeenSet = true; m_snsTopicARN.assign(value); }
96 
106  inline Notification& WithSnsTopicARN(const Aws::String& value) { SetSnsTopicARN(value); return *this;}
107 
117  inline Notification& WithSnsTopicARN(Aws::String&& value) { SetSnsTopicARN(value); return *this;}
118 
128  inline Notification& WithSnsTopicARN(const char* value) { SetSnsTopicARN(value); return *this;}
129 
133  inline const Aws::Vector<JobState>& GetJobStatesToNotify() const{ return m_jobStatesToNotify; }
134 
138  inline void SetJobStatesToNotify(const Aws::Vector<JobState>& value) { m_jobStatesToNotifyHasBeenSet = true; m_jobStatesToNotify = value; }
139 
143  inline void SetJobStatesToNotify(Aws::Vector<JobState>&& value) { m_jobStatesToNotifyHasBeenSet = true; m_jobStatesToNotify = value; }
144 
148  inline Notification& WithJobStatesToNotify(const Aws::Vector<JobState>& value) { SetJobStatesToNotify(value); return *this;}
149 
153  inline Notification& WithJobStatesToNotify(Aws::Vector<JobState>&& value) { SetJobStatesToNotify(value); return *this;}
154 
158  inline Notification& AddJobStatesToNotify(const JobState& value) { m_jobStatesToNotifyHasBeenSet = true; m_jobStatesToNotify.push_back(value); return *this; }
159 
163  inline Notification& AddJobStatesToNotify(JobState&& value) { m_jobStatesToNotifyHasBeenSet = true; m_jobStatesToNotify.push_back(value); return *this; }
164 
168  inline bool GetNotifyAll() const{ return m_notifyAll; }
169 
173  inline void SetNotifyAll(bool value) { m_notifyAllHasBeenSet = true; m_notifyAll = value; }
174 
178  inline Notification& WithNotifyAll(bool value) { SetNotifyAll(value); return *this;}
179 
180  private:
181  Aws::String m_snsTopicARN;
182  bool m_snsTopicARNHasBeenSet;
183  Aws::Vector<JobState> m_jobStatesToNotify;
184  bool m_jobStatesToNotifyHasBeenSet;
185  bool m_notifyAll;
186  bool m_notifyAllHasBeenSet;
187  };
188 
189 } // namespace Model
190 } // namespace Snowball
191 } // namespace Aws
const Aws::String & GetSnsTopicARN() const
Definition: Notification.h:62
void SetJobStatesToNotify(Aws::Vector< JobState > &&value)
Definition: Notification.h:143
Notification & AddJobStatesToNotify(JobState &&value)
Definition: Notification.h:163
Notification & WithNotifyAll(bool value)
Definition: Notification.h:178
void SetJobStatesToNotify(const Aws::Vector< JobState > &value)
Definition: Notification.h:138
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetSnsTopicARN(Aws::String &&value)
Definition: Notification.h:84
Notification & WithJobStatesToNotify(const Aws::Vector< JobState > &value)
Definition: Notification.h:148
const Aws::Vector< JobState > & GetJobStatesToNotify() const
Definition: Notification.h:133
Notification & WithJobStatesToNotify(Aws::Vector< JobState > &&value)
Definition: Notification.h:153
Notification & WithSnsTopicARN(const char *value)
Definition: Notification.h:128
#define AWS_SNOWBALL_API
void SetSnsTopicARN(const Aws::String &value)
Definition: Notification.h:73
Notification & WithSnsTopicARN(const Aws::String &value)
Definition: Notification.h:106
Notification & WithSnsTopicARN(Aws::String &&value)
Definition: Notification.h:117
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Notification & AddJobStatesToNotify(const JobState &value)
Definition: Notification.h:158
void SetSnsTopicARN(const char *value)
Definition: Notification.h:95
JSON (JavaScript Object Notation).