AWS SDK for C++  0.12.9
AWS SDK for C++
PutNotificationConfigurationRequest.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 AutoScaling
24 {
25 namespace Model
26 {
27 
31  {
32  public:
34  Aws::String SerializePayload() const override;
35 
39  inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; }
40 
44  inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
45 
49  inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
50 
54  inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); }
55 
59  inline PutNotificationConfigurationRequest& WithAutoScalingGroupName(const Aws::String& value) { SetAutoScalingGroupName(value); return *this;}
60 
64  inline PutNotificationConfigurationRequest& WithAutoScalingGroupName(Aws::String&& value) { SetAutoScalingGroupName(value); return *this;}
65 
69  inline PutNotificationConfigurationRequest& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;}
70 
75  inline const Aws::String& GetTopicARN() const{ return m_topicARN; }
76 
81  inline void SetTopicARN(const Aws::String& value) { m_topicARNHasBeenSet = true; m_topicARN = value; }
82 
87  inline void SetTopicARN(Aws::String&& value) { m_topicARNHasBeenSet = true; m_topicARN = value; }
88 
93  inline void SetTopicARN(const char* value) { m_topicARNHasBeenSet = true; m_topicARN.assign(value); }
94 
99  inline PutNotificationConfigurationRequest& WithTopicARN(const Aws::String& value) { SetTopicARN(value); return *this;}
100 
105  inline PutNotificationConfigurationRequest& WithTopicARN(Aws::String&& value) { SetTopicARN(value); return *this;}
106 
111  inline PutNotificationConfigurationRequest& WithTopicARN(const char* value) { SetTopicARN(value); return *this;}
112 
118  inline const Aws::Vector<Aws::String>& GetNotificationTypes() const{ return m_notificationTypes; }
119 
125  inline void SetNotificationTypes(const Aws::Vector<Aws::String>& value) { m_notificationTypesHasBeenSet = true; m_notificationTypes = value; }
126 
132  inline void SetNotificationTypes(Aws::Vector<Aws::String>&& value) { m_notificationTypesHasBeenSet = true; m_notificationTypes = value; }
133 
139  inline PutNotificationConfigurationRequest& WithNotificationTypes(const Aws::Vector<Aws::String>& value) { SetNotificationTypes(value); return *this;}
140 
146  inline PutNotificationConfigurationRequest& WithNotificationTypes(Aws::Vector<Aws::String>&& value) { SetNotificationTypes(value); return *this;}
147 
153  inline PutNotificationConfigurationRequest& AddNotificationTypes(const Aws::String& value) { m_notificationTypesHasBeenSet = true; m_notificationTypes.push_back(value); return *this; }
154 
160  inline PutNotificationConfigurationRequest& AddNotificationTypes(Aws::String&& value) { m_notificationTypesHasBeenSet = true; m_notificationTypes.push_back(value); return *this; }
161 
167  inline PutNotificationConfigurationRequest& AddNotificationTypes(const char* value) { m_notificationTypesHasBeenSet = true; m_notificationTypes.push_back(value); return *this; }
168 
169  private:
170  Aws::String m_autoScalingGroupName;
171  bool m_autoScalingGroupNameHasBeenSet;
172  Aws::String m_topicARN;
173  bool m_topicARNHasBeenSet;
174  Aws::Vector<Aws::String> m_notificationTypes;
175  bool m_notificationTypesHasBeenSet;
176  };
177 
178 } // namespace Model
179 } // namespace AutoScaling
180 } // namespace Aws
PutNotificationConfigurationRequest & WithAutoScalingGroupName(Aws::String &&value)
PutNotificationConfigurationRequest & AddNotificationTypes(Aws::String &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
PutNotificationConfigurationRequest & WithAutoScalingGroupName(const Aws::String &value)
PutNotificationConfigurationRequest & WithTopicARN(Aws::String &&value)
PutNotificationConfigurationRequest & AddNotificationTypes(const Aws::String &value)
PutNotificationConfigurationRequest & AddNotificationTypes(const char *value)
PutNotificationConfigurationRequest & WithNotificationTypes(const Aws::Vector< Aws::String > &value)
PutNotificationConfigurationRequest & WithNotificationTypes(Aws::Vector< Aws::String > &&value)
PutNotificationConfigurationRequest & WithTopicARN(const char *value)
PutNotificationConfigurationRequest & WithAutoScalingGroupName(const char *value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_AUTOSCALING_API
PutNotificationConfigurationRequest & WithTopicARN(const Aws::String &value)
JSON (JavaScript Object Notation).