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/pinpoint/model/EndpointResponse.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace Utils
15 {
16 namespace Json
17 {
18   class JsonValue;
19   class JsonView;
20 } // namespace Json
21 } // namespace Utils
22 namespace Pinpoint
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>Provides information about all the endpoints that are associated with a user
29    * ID.</p><p><h3>See Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/EndpointsResponse">AWS
31    * API Reference</a></p>
32    */
33   class AWS_PINPOINT_API EndpointsResponse
34   {
35   public:
36     EndpointsResponse();
37     EndpointsResponse(Aws::Utils::Json::JsonView jsonValue);
38     EndpointsResponse& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p>An array of responses, one for each endpoint that's associated with the user
44      * ID.</p>
45      */
GetItem()46     inline const Aws::Vector<EndpointResponse>& GetItem() const{ return m_item; }
47 
48     /**
49      * <p>An array of responses, one for each endpoint that's associated with the user
50      * ID.</p>
51      */
ItemHasBeenSet()52     inline bool ItemHasBeenSet() const { return m_itemHasBeenSet; }
53 
54     /**
55      * <p>An array of responses, one for each endpoint that's associated with the user
56      * ID.</p>
57      */
SetItem(const Aws::Vector<EndpointResponse> & value)58     inline void SetItem(const Aws::Vector<EndpointResponse>& value) { m_itemHasBeenSet = true; m_item = value; }
59 
60     /**
61      * <p>An array of responses, one for each endpoint that's associated with the user
62      * ID.</p>
63      */
SetItem(Aws::Vector<EndpointResponse> && value)64     inline void SetItem(Aws::Vector<EndpointResponse>&& value) { m_itemHasBeenSet = true; m_item = std::move(value); }
65 
66     /**
67      * <p>An array of responses, one for each endpoint that's associated with the user
68      * ID.</p>
69      */
WithItem(const Aws::Vector<EndpointResponse> & value)70     inline EndpointsResponse& WithItem(const Aws::Vector<EndpointResponse>& value) { SetItem(value); return *this;}
71 
72     /**
73      * <p>An array of responses, one for each endpoint that's associated with the user
74      * ID.</p>
75      */
WithItem(Aws::Vector<EndpointResponse> && value)76     inline EndpointsResponse& WithItem(Aws::Vector<EndpointResponse>&& value) { SetItem(std::move(value)); return *this;}
77 
78     /**
79      * <p>An array of responses, one for each endpoint that's associated with the user
80      * ID.</p>
81      */
AddItem(const EndpointResponse & value)82     inline EndpointsResponse& AddItem(const EndpointResponse& value) { m_itemHasBeenSet = true; m_item.push_back(value); return *this; }
83 
84     /**
85      * <p>An array of responses, one for each endpoint that's associated with the user
86      * ID.</p>
87      */
AddItem(EndpointResponse && value)88     inline EndpointsResponse& AddItem(EndpointResponse&& value) { m_itemHasBeenSet = true; m_item.push_back(std::move(value)); return *this; }
89 
90   private:
91 
92     Aws::Vector<EndpointResponse> m_item;
93     bool m_itemHasBeenSet;
94   };
95 
96 } // namespace Model
97 } // namespace Pinpoint
98 } // namespace Aws
99