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/clouddirectory/CloudDirectory_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSVector.h>
9 #include <aws/core/utils/memory/stl/AWSString.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 CloudDirectory
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>Represents the output of a <a>ListObjectPolicies</a> response
29    * operation.</p><p><h3>See Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/clouddirectory-2017-01-11/BatchListObjectPoliciesResponse">AWS
31    * API Reference</a></p>
32    */
33   class AWS_CLOUDDIRECTORY_API BatchListObjectPoliciesResponse
34   {
35   public:
36     BatchListObjectPoliciesResponse();
37     BatchListObjectPoliciesResponse(Aws::Utils::Json::JsonView jsonValue);
38     BatchListObjectPoliciesResponse& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
44      * object.</p>
45      */
GetAttachedPolicyIds()46     inline const Aws::Vector<Aws::String>& GetAttachedPolicyIds() const{ return m_attachedPolicyIds; }
47 
48     /**
49      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
50      * object.</p>
51      */
AttachedPolicyIdsHasBeenSet()52     inline bool AttachedPolicyIdsHasBeenSet() const { return m_attachedPolicyIdsHasBeenSet; }
53 
54     /**
55      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
56      * object.</p>
57      */
SetAttachedPolicyIds(const Aws::Vector<Aws::String> & value)58     inline void SetAttachedPolicyIds(const Aws::Vector<Aws::String>& value) { m_attachedPolicyIdsHasBeenSet = true; m_attachedPolicyIds = value; }
59 
60     /**
61      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
62      * object.</p>
63      */
SetAttachedPolicyIds(Aws::Vector<Aws::String> && value)64     inline void SetAttachedPolicyIds(Aws::Vector<Aws::String>&& value) { m_attachedPolicyIdsHasBeenSet = true; m_attachedPolicyIds = std::move(value); }
65 
66     /**
67      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
68      * object.</p>
69      */
WithAttachedPolicyIds(const Aws::Vector<Aws::String> & value)70     inline BatchListObjectPoliciesResponse& WithAttachedPolicyIds(const Aws::Vector<Aws::String>& value) { SetAttachedPolicyIds(value); return *this;}
71 
72     /**
73      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
74      * object.</p>
75      */
WithAttachedPolicyIds(Aws::Vector<Aws::String> && value)76     inline BatchListObjectPoliciesResponse& WithAttachedPolicyIds(Aws::Vector<Aws::String>&& value) { SetAttachedPolicyIds(std::move(value)); return *this;}
77 
78     /**
79      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
80      * object.</p>
81      */
AddAttachedPolicyIds(const Aws::String & value)82     inline BatchListObjectPoliciesResponse& AddAttachedPolicyIds(const Aws::String& value) { m_attachedPolicyIdsHasBeenSet = true; m_attachedPolicyIds.push_back(value); return *this; }
83 
84     /**
85      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
86      * object.</p>
87      */
AddAttachedPolicyIds(Aws::String && value)88     inline BatchListObjectPoliciesResponse& AddAttachedPolicyIds(Aws::String&& value) { m_attachedPolicyIdsHasBeenSet = true; m_attachedPolicyIds.push_back(std::move(value)); return *this; }
89 
90     /**
91      * <p>A list of policy <code>ObjectIdentifiers</code>, that are attached to the
92      * object.</p>
93      */
AddAttachedPolicyIds(const char * value)94     inline BatchListObjectPoliciesResponse& AddAttachedPolicyIds(const char* value) { m_attachedPolicyIdsHasBeenSet = true; m_attachedPolicyIds.push_back(value); return *this; }
95 
96 
97     /**
98      * <p>The pagination token.</p>
99      */
GetNextToken()100     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
101 
102     /**
103      * <p>The pagination token.</p>
104      */
NextTokenHasBeenSet()105     inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
106 
107     /**
108      * <p>The pagination token.</p>
109      */
SetNextToken(const Aws::String & value)110     inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
111 
112     /**
113      * <p>The pagination token.</p>
114      */
SetNextToken(Aws::String && value)115     inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
116 
117     /**
118      * <p>The pagination token.</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 pagination token.</p>
124      */
WithNextToken(const Aws::String & value)125     inline BatchListObjectPoliciesResponse& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
126 
127     /**
128      * <p>The pagination token.</p>
129      */
WithNextToken(Aws::String && value)130     inline BatchListObjectPoliciesResponse& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
131 
132     /**
133      * <p>The pagination token.</p>
134      */
WithNextToken(const char * value)135     inline BatchListObjectPoliciesResponse& WithNextToken(const char* value) { SetNextToken(value); return *this;}
136 
137   private:
138 
139     Aws::Vector<Aws::String> m_attachedPolicyIds;
140     bool m_attachedPolicyIdsHasBeenSet;
141 
142     Aws::String m_nextToken;
143     bool m_nextTokenHasBeenSet;
144   };
145 
146 } // namespace Model
147 } // namespace CloudDirectory
148 } // namespace Aws
149