1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/pinpoint/Pinpoint_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSVector.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/pinpoint/model/CampaignResponse.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Utils
16 {
17 namespace Json
18 {
19   class JsonValue;
20   class JsonView;
21 } // namespace Json
22 } // namespace Utils
23 namespace Pinpoint
24 {
25 namespace Model
26 {
27 
28   /**
29    * <p>Provides information about the configuration and other settings for all the
30    * campaigns that are associated with an application.</p><p><h3>See Also:</h3>   <a
31    * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/CampaignsResponse">AWS
32    * API Reference</a></p>
33    */
34   class AWS_PINPOINT_API CampaignsResponse
35   {
36   public:
37     CampaignsResponse();
38     CampaignsResponse(Aws::Utils::Json::JsonView jsonValue);
39     CampaignsResponse& operator=(Aws::Utils::Json::JsonView jsonValue);
40     Aws::Utils::Json::JsonValue Jsonize() const;
41 
42 
43     /**
44      * <p>An array of responses, one for each campaign that's associated with the
45      * application.</p>
46      */
GetItem()47     inline const Aws::Vector<CampaignResponse>& GetItem() const{ return m_item; }
48 
49     /**
50      * <p>An array of responses, one for each campaign that's associated with the
51      * application.</p>
52      */
ItemHasBeenSet()53     inline bool ItemHasBeenSet() const { return m_itemHasBeenSet; }
54 
55     /**
56      * <p>An array of responses, one for each campaign that's associated with the
57      * application.</p>
58      */
SetItem(const Aws::Vector<CampaignResponse> & value)59     inline void SetItem(const Aws::Vector<CampaignResponse>& value) { m_itemHasBeenSet = true; m_item = value; }
60 
61     /**
62      * <p>An array of responses, one for each campaign that's associated with the
63      * application.</p>
64      */
SetItem(Aws::Vector<CampaignResponse> && value)65     inline void SetItem(Aws::Vector<CampaignResponse>&& value) { m_itemHasBeenSet = true; m_item = std::move(value); }
66 
67     /**
68      * <p>An array of responses, one for each campaign that's associated with the
69      * application.</p>
70      */
WithItem(const Aws::Vector<CampaignResponse> & value)71     inline CampaignsResponse& WithItem(const Aws::Vector<CampaignResponse>& value) { SetItem(value); return *this;}
72 
73     /**
74      * <p>An array of responses, one for each campaign that's associated with the
75      * application.</p>
76      */
WithItem(Aws::Vector<CampaignResponse> && value)77     inline CampaignsResponse& WithItem(Aws::Vector<CampaignResponse>&& value) { SetItem(std::move(value)); return *this;}
78 
79     /**
80      * <p>An array of responses, one for each campaign that's associated with the
81      * application.</p>
82      */
AddItem(const CampaignResponse & value)83     inline CampaignsResponse& AddItem(const CampaignResponse& value) { m_itemHasBeenSet = true; m_item.push_back(value); return *this; }
84 
85     /**
86      * <p>An array of responses, one for each campaign that's associated with the
87      * application.</p>
88      */
AddItem(CampaignResponse && value)89     inline CampaignsResponse& AddItem(CampaignResponse&& value) { m_itemHasBeenSet = true; m_item.push_back(std::move(value)); return *this; }
90 
91 
92     /**
93      * <p>The string to use in a subsequent request to get the next page of results in
94      * a paginated response. This value is null if there are no additional pages.</p>
95      */
GetNextToken()96     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
97 
98     /**
99      * <p>The string to use in a subsequent request to get the next page of results in
100      * a paginated response. This value is null if there are no additional pages.</p>
101      */
NextTokenHasBeenSet()102     inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
103 
104     /**
105      * <p>The string to use in a subsequent request to get the next page of results in
106      * a paginated response. This value is null if there are no additional pages.</p>
107      */
SetNextToken(const Aws::String & value)108     inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
109 
110     /**
111      * <p>The string to use in a subsequent request to get the next page of results in
112      * a paginated response. This value is null if there are no additional pages.</p>
113      */
SetNextToken(Aws::String && value)114     inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
115 
116     /**
117      * <p>The string to use in a subsequent request to get the next page of results in
118      * a paginated response. This value is null if there are no additional pages.</p>
119      */
SetNextToken(const char * value)120     inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
121 
122     /**
123      * <p>The string to use in a subsequent request to get the next page of results in
124      * a paginated response. This value is null if there are no additional pages.</p>
125      */
WithNextToken(const Aws::String & value)126     inline CampaignsResponse& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
127 
128     /**
129      * <p>The string to use in a subsequent request to get the next page of results in
130      * a paginated response. This value is null if there are no additional pages.</p>
131      */
WithNextToken(Aws::String && value)132     inline CampaignsResponse& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
133 
134     /**
135      * <p>The string to use in a subsequent request to get the next page of results in
136      * a paginated response. This value is null if there are no additional pages.</p>
137      */
WithNextToken(const char * value)138     inline CampaignsResponse& WithNextToken(const char* value) { SetNextToken(value); return *this;}
139 
140   private:
141 
142     Aws::Vector<CampaignResponse> m_item;
143     bool m_itemHasBeenSet;
144 
145     Aws::String m_nextToken;
146     bool m_nextTokenHasBeenSet;
147   };
148 
149 } // namespace Model
150 } // namespace Pinpoint
151 } // namespace Aws
152