AWS SDK for C++  0.14.3
AWS SDK for C++
NotificationConfig.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
16 #include <aws/ssm/SSM_EXPORTS.h>
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Json
27 {
28  class JsonValue;
29 } // namespace Json
30 } // namespace Utils
31 namespace SSM
32 {
33 namespace Model
34 {
35 
40  {
41  public:
44  NotificationConfig& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
45  Aws::Utils::Json::JsonValue Jsonize() const;
46 
51  inline const Aws::String& GetNotificationArn() const{ return m_notificationArn; }
52 
57  inline void SetNotificationArn(const Aws::String& value) { m_notificationArnHasBeenSet = true; m_notificationArn = value; }
58 
63  inline void SetNotificationArn(Aws::String&& value) { m_notificationArnHasBeenSet = true; m_notificationArn = value; }
64 
69  inline void SetNotificationArn(const char* value) { m_notificationArnHasBeenSet = true; m_notificationArn.assign(value); }
70 
75  inline NotificationConfig& WithNotificationArn(const Aws::String& value) { SetNotificationArn(value); return *this;}
76 
81  inline NotificationConfig& WithNotificationArn(Aws::String&& value) { SetNotificationArn(value); return *this;}
82 
87  inline NotificationConfig& WithNotificationArn(const char* value) { SetNotificationArn(value); return *this;}
88 
96  inline const Aws::Vector<NotificationEvent>& GetNotificationEvents() const{ return m_notificationEvents; }
97 
105  inline void SetNotificationEvents(const Aws::Vector<NotificationEvent>& value) { m_notificationEventsHasBeenSet = true; m_notificationEvents = value; }
106 
114  inline void SetNotificationEvents(Aws::Vector<NotificationEvent>&& value) { m_notificationEventsHasBeenSet = true; m_notificationEvents = value; }
115 
123  inline NotificationConfig& WithNotificationEvents(const Aws::Vector<NotificationEvent>& value) { SetNotificationEvents(value); return *this;}
124 
132  inline NotificationConfig& WithNotificationEvents(Aws::Vector<NotificationEvent>&& value) { SetNotificationEvents(value); return *this;}
133 
141  inline NotificationConfig& AddNotificationEvents(const NotificationEvent& value) { m_notificationEventsHasBeenSet = true; m_notificationEvents.push_back(value); return *this; }
142 
150  inline NotificationConfig& AddNotificationEvents(NotificationEvent&& value) { m_notificationEventsHasBeenSet = true; m_notificationEvents.push_back(value); return *this; }
151 
157  inline const NotificationType& GetNotificationType() const{ return m_notificationType; }
158 
164  inline void SetNotificationType(const NotificationType& value) { m_notificationTypeHasBeenSet = true; m_notificationType = value; }
165 
171  inline void SetNotificationType(NotificationType&& value) { m_notificationTypeHasBeenSet = true; m_notificationType = value; }
172 
178  inline NotificationConfig& WithNotificationType(const NotificationType& value) { SetNotificationType(value); return *this;}
179 
185  inline NotificationConfig& WithNotificationType(NotificationType&& value) { SetNotificationType(value); return *this;}
186 
187  private:
188  Aws::String m_notificationArn;
189  bool m_notificationArnHasBeenSet;
190  Aws::Vector<NotificationEvent> m_notificationEvents;
191  bool m_notificationEventsHasBeenSet;
192  NotificationType m_notificationType;
193  bool m_notificationTypeHasBeenSet;
194  };
195 
196 } // namespace Model
197 } // namespace SSM
198 } // namespace Aws
NotificationConfig & AddNotificationEvents(NotificationEvent &&value)
NotificationConfig & WithNotificationType(NotificationType &&value)
void SetNotificationType(NotificationType &&value)
NotificationConfig & WithNotificationArn(const char *value)
const Aws::String & GetNotificationArn() const
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
NotificationConfig & WithNotificationType(const NotificationType &value)
NotificationConfig & WithNotificationArn(const Aws::String &value)
void SetNotificationEvents(const Aws::Vector< NotificationEvent > &value)
const NotificationType & GetNotificationType() const
NotificationConfig & WithNotificationEvents(const Aws::Vector< NotificationEvent > &value)
NotificationConfig & WithNotificationArn(Aws::String &&value)
void SetNotificationArn(const Aws::String &value)
void SetNotificationArn(Aws::String &&value)
NotificationConfig & WithNotificationEvents(Aws::Vector< NotificationEvent > &&value)
void SetNotificationType(const NotificationType &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_SSM_API
Definition: SSM_EXPORTS.h:37
NotificationConfig & AddNotificationEvents(const NotificationEvent &value)
const Aws::Vector< NotificationEvent > & GetNotificationEvents() const
JSON (JavaScript Object Notation).
void SetNotificationArn(const char *value)
void SetNotificationEvents(Aws::Vector< NotificationEvent > &&value)