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/codeartifact/CodeArtifact_EXPORTS.h>
8 #include <aws/codeartifact/model/PackageFormat.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/memory/stl/AWSVector.h>
11 #include <aws/codeartifact/model/PackageDependency.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 template<typename RESULT_TYPE>
17 class AmazonWebServiceResult;
18 
19 namespace Utils
20 {
21 namespace Json
22 {
23   class JsonValue;
24 } // namespace Json
25 } // namespace Utils
26 namespace CodeArtifact
27 {
28 namespace Model
29 {
30   class AWS_CODEARTIFACT_API ListPackageVersionDependenciesResult
31   {
32   public:
33     ListPackageVersionDependenciesResult();
34     ListPackageVersionDependenciesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
35     ListPackageVersionDependenciesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
36 
37 
38     /**
39      * <p> A format that specifies the type of the package that contains the returned
40      * dependencies. The valid values are: </p> <ul> <li> <p> <code>npm</code> </p>
41      * </li> <li> <p> <code>pypi</code> </p> </li> <li> <p> <code>maven</code> </p>
42      * </li> </ul>
43      */
GetFormat()44     inline const PackageFormat& GetFormat() const{ return m_format; }
45 
46     /**
47      * <p> A format that specifies the type of the package that contains the returned
48      * dependencies. The valid values are: </p> <ul> <li> <p> <code>npm</code> </p>
49      * </li> <li> <p> <code>pypi</code> </p> </li> <li> <p> <code>maven</code> </p>
50      * </li> </ul>
51      */
SetFormat(const PackageFormat & value)52     inline void SetFormat(const PackageFormat& value) { m_format = value; }
53 
54     /**
55      * <p> A format that specifies the type of the package that contains the returned
56      * dependencies. The valid values are: </p> <ul> <li> <p> <code>npm</code> </p>
57      * </li> <li> <p> <code>pypi</code> </p> </li> <li> <p> <code>maven</code> </p>
58      * </li> </ul>
59      */
SetFormat(PackageFormat && value)60     inline void SetFormat(PackageFormat&& value) { m_format = std::move(value); }
61 
62     /**
63      * <p> A format that specifies the type of the package that contains the returned
64      * dependencies. The valid values are: </p> <ul> <li> <p> <code>npm</code> </p>
65      * </li> <li> <p> <code>pypi</code> </p> </li> <li> <p> <code>maven</code> </p>
66      * </li> </ul>
67      */
WithFormat(const PackageFormat & value)68     inline ListPackageVersionDependenciesResult& WithFormat(const PackageFormat& value) { SetFormat(value); return *this;}
69 
70     /**
71      * <p> A format that specifies the type of the package that contains the returned
72      * dependencies. The valid values are: </p> <ul> <li> <p> <code>npm</code> </p>
73      * </li> <li> <p> <code>pypi</code> </p> </li> <li> <p> <code>maven</code> </p>
74      * </li> </ul>
75      */
WithFormat(PackageFormat && value)76     inline ListPackageVersionDependenciesResult& WithFormat(PackageFormat&& value) { SetFormat(std::move(value)); return *this;}
77 
78 
79     /**
80      * <p> The namespace of the package. The package component that specifies its
81      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
82      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
83      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
84      * package does not contain a corresponding component, so Python packages do not
85      * have a namespace. </p> </li> </ul>
86      */
GetNamespace()87     inline const Aws::String& GetNamespace() const{ return m_namespace; }
88 
89     /**
90      * <p> The namespace of the package. The package component that specifies its
91      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
92      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
93      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
94      * package does not contain a corresponding component, so Python packages do not
95      * have a namespace. </p> </li> </ul>
96      */
SetNamespace(const Aws::String & value)97     inline void SetNamespace(const Aws::String& value) { m_namespace = value; }
98 
99     /**
100      * <p> The namespace of the package. The package component that specifies its
101      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
102      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
103      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
104      * package does not contain a corresponding component, so Python packages do not
105      * have a namespace. </p> </li> </ul>
106      */
SetNamespace(Aws::String && value)107     inline void SetNamespace(Aws::String&& value) { m_namespace = std::move(value); }
108 
109     /**
110      * <p> The namespace of the package. The package component that specifies its
111      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
112      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
113      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
114      * package does not contain a corresponding component, so Python packages do not
115      * have a namespace. </p> </li> </ul>
116      */
SetNamespace(const char * value)117     inline void SetNamespace(const char* value) { m_namespace.assign(value); }
118 
119     /**
120      * <p> The namespace of the package. The package component that specifies its
121      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
122      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
123      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
124      * package does not contain a corresponding component, so Python packages do not
125      * have a namespace. </p> </li> </ul>
126      */
WithNamespace(const Aws::String & value)127     inline ListPackageVersionDependenciesResult& WithNamespace(const Aws::String& value) { SetNamespace(value); return *this;}
128 
129     /**
130      * <p> The namespace of the package. The package component that specifies its
131      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
132      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
133      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
134      * package does not contain a corresponding component, so Python packages do not
135      * have a namespace. </p> </li> </ul>
136      */
WithNamespace(Aws::String && value)137     inline ListPackageVersionDependenciesResult& WithNamespace(Aws::String&& value) { SetNamespace(std::move(value)); return *this;}
138 
139     /**
140      * <p> The namespace of the package. The package component that specifies its
141      * namespace depends on its type. For example: </p> <ul> <li> <p> The namespace of
142      * a Maven package is its <code>groupId</code>. </p> </li> <li> <p> The namespace
143      * of an npm package is its <code>scope</code>. </p> </li> <li> <p> A Python
144      * package does not contain a corresponding component, so Python packages do not
145      * have a namespace. </p> </li> </ul>
146      */
WithNamespace(const char * value)147     inline ListPackageVersionDependenciesResult& WithNamespace(const char* value) { SetNamespace(value); return *this;}
148 
149 
150     /**
151      * <p> The name of the package that contains the returned package versions
152      * dependencies. </p>
153      */
GetPackage()154     inline const Aws::String& GetPackage() const{ return m_package; }
155 
156     /**
157      * <p> The name of the package that contains the returned package versions
158      * dependencies. </p>
159      */
SetPackage(const Aws::String & value)160     inline void SetPackage(const Aws::String& value) { m_package = value; }
161 
162     /**
163      * <p> The name of the package that contains the returned package versions
164      * dependencies. </p>
165      */
SetPackage(Aws::String && value)166     inline void SetPackage(Aws::String&& value) { m_package = std::move(value); }
167 
168     /**
169      * <p> The name of the package that contains the returned package versions
170      * dependencies. </p>
171      */
SetPackage(const char * value)172     inline void SetPackage(const char* value) { m_package.assign(value); }
173 
174     /**
175      * <p> The name of the package that contains the returned package versions
176      * dependencies. </p>
177      */
WithPackage(const Aws::String & value)178     inline ListPackageVersionDependenciesResult& WithPackage(const Aws::String& value) { SetPackage(value); return *this;}
179 
180     /**
181      * <p> The name of the package that contains the returned package versions
182      * dependencies. </p>
183      */
WithPackage(Aws::String && value)184     inline ListPackageVersionDependenciesResult& WithPackage(Aws::String&& value) { SetPackage(std::move(value)); return *this;}
185 
186     /**
187      * <p> The name of the package that contains the returned package versions
188      * dependencies. </p>
189      */
WithPackage(const char * value)190     inline ListPackageVersionDependenciesResult& WithPackage(const char* value) { SetPackage(value); return *this;}
191 
192 
193     /**
194      * <p> The version of the package that is specified in the request. </p>
195      */
GetVersion()196     inline const Aws::String& GetVersion() const{ return m_version; }
197 
198     /**
199      * <p> The version of the package that is specified in the request. </p>
200      */
SetVersion(const Aws::String & value)201     inline void SetVersion(const Aws::String& value) { m_version = value; }
202 
203     /**
204      * <p> The version of the package that is specified in the request. </p>
205      */
SetVersion(Aws::String && value)206     inline void SetVersion(Aws::String&& value) { m_version = std::move(value); }
207 
208     /**
209      * <p> The version of the package that is specified in the request. </p>
210      */
SetVersion(const char * value)211     inline void SetVersion(const char* value) { m_version.assign(value); }
212 
213     /**
214      * <p> The version of the package that is specified in the request. </p>
215      */
WithVersion(const Aws::String & value)216     inline ListPackageVersionDependenciesResult& WithVersion(const Aws::String& value) { SetVersion(value); return *this;}
217 
218     /**
219      * <p> The version of the package that is specified in the request. </p>
220      */
WithVersion(Aws::String && value)221     inline ListPackageVersionDependenciesResult& WithVersion(Aws::String&& value) { SetVersion(std::move(value)); return *this;}
222 
223     /**
224      * <p> The version of the package that is specified in the request. </p>
225      */
WithVersion(const char * value)226     inline ListPackageVersionDependenciesResult& WithVersion(const char* value) { SetVersion(value); return *this;}
227 
228 
229     /**
230      * <p> The current revision associated with the package version. </p>
231      */
GetVersionRevision()232     inline const Aws::String& GetVersionRevision() const{ return m_versionRevision; }
233 
234     /**
235      * <p> The current revision associated with the package version. </p>
236      */
SetVersionRevision(const Aws::String & value)237     inline void SetVersionRevision(const Aws::String& value) { m_versionRevision = value; }
238 
239     /**
240      * <p> The current revision associated with the package version. </p>
241      */
SetVersionRevision(Aws::String && value)242     inline void SetVersionRevision(Aws::String&& value) { m_versionRevision = std::move(value); }
243 
244     /**
245      * <p> The current revision associated with the package version. </p>
246      */
SetVersionRevision(const char * value)247     inline void SetVersionRevision(const char* value) { m_versionRevision.assign(value); }
248 
249     /**
250      * <p> The current revision associated with the package version. </p>
251      */
WithVersionRevision(const Aws::String & value)252     inline ListPackageVersionDependenciesResult& WithVersionRevision(const Aws::String& value) { SetVersionRevision(value); return *this;}
253 
254     /**
255      * <p> The current revision associated with the package version. </p>
256      */
WithVersionRevision(Aws::String && value)257     inline ListPackageVersionDependenciesResult& WithVersionRevision(Aws::String&& value) { SetVersionRevision(std::move(value)); return *this;}
258 
259     /**
260      * <p> The current revision associated with the package version. </p>
261      */
WithVersionRevision(const char * value)262     inline ListPackageVersionDependenciesResult& WithVersionRevision(const char* value) { SetVersionRevision(value); return *this;}
263 
264 
265     /**
266      * <p> The token for the next set of results. Use the value returned in the
267      * previous response in the next request to retrieve the next set of results. </p>
268      */
GetNextToken()269     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
270 
271     /**
272      * <p> The token for the next set of results. Use the value returned in the
273      * previous response in the next request to retrieve the next set of results. </p>
274      */
SetNextToken(const Aws::String & value)275     inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
276 
277     /**
278      * <p> The token for the next set of results. Use the value returned in the
279      * previous response in the next request to retrieve the next set of results. </p>
280      */
SetNextToken(Aws::String && value)281     inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
282 
283     /**
284      * <p> The token for the next set of results. Use the value returned in the
285      * previous response in the next request to retrieve the next set of results. </p>
286      */
SetNextToken(const char * value)287     inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
288 
289     /**
290      * <p> The token for the next set of results. Use the value returned in the
291      * previous response in the next request to retrieve the next set of results. </p>
292      */
WithNextToken(const Aws::String & value)293     inline ListPackageVersionDependenciesResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
294 
295     /**
296      * <p> The token for the next set of results. Use the value returned in the
297      * previous response in the next request to retrieve the next set of results. </p>
298      */
WithNextToken(Aws::String && value)299     inline ListPackageVersionDependenciesResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
300 
301     /**
302      * <p> The token for the next set of results. Use the value returned in the
303      * previous response in the next request to retrieve the next set of results. </p>
304      */
WithNextToken(const char * value)305     inline ListPackageVersionDependenciesResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
306 
307 
308     /**
309      * <p> The returned list of <a
310      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
311      * objects. </p>
312      */
GetDependencies()313     inline const Aws::Vector<PackageDependency>& GetDependencies() const{ return m_dependencies; }
314 
315     /**
316      * <p> The returned list of <a
317      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
318      * objects. </p>
319      */
SetDependencies(const Aws::Vector<PackageDependency> & value)320     inline void SetDependencies(const Aws::Vector<PackageDependency>& value) { m_dependencies = value; }
321 
322     /**
323      * <p> The returned list of <a
324      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
325      * objects. </p>
326      */
SetDependencies(Aws::Vector<PackageDependency> && value)327     inline void SetDependencies(Aws::Vector<PackageDependency>&& value) { m_dependencies = std::move(value); }
328 
329     /**
330      * <p> The returned list of <a
331      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
332      * objects. </p>
333      */
WithDependencies(const Aws::Vector<PackageDependency> & value)334     inline ListPackageVersionDependenciesResult& WithDependencies(const Aws::Vector<PackageDependency>& value) { SetDependencies(value); return *this;}
335 
336     /**
337      * <p> The returned list of <a
338      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
339      * objects. </p>
340      */
WithDependencies(Aws::Vector<PackageDependency> && value)341     inline ListPackageVersionDependenciesResult& WithDependencies(Aws::Vector<PackageDependency>&& value) { SetDependencies(std::move(value)); return *this;}
342 
343     /**
344      * <p> The returned list of <a
345      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
346      * objects. </p>
347      */
AddDependencies(const PackageDependency & value)348     inline ListPackageVersionDependenciesResult& AddDependencies(const PackageDependency& value) { m_dependencies.push_back(value); return *this; }
349 
350     /**
351      * <p> The returned list of <a
352      * href="https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_PackageDependency.html">PackageDependency</a>
353      * objects. </p>
354      */
AddDependencies(PackageDependency && value)355     inline ListPackageVersionDependenciesResult& AddDependencies(PackageDependency&& value) { m_dependencies.push_back(std::move(value)); return *this; }
356 
357   private:
358 
359     PackageFormat m_format;
360 
361     Aws::String m_namespace;
362 
363     Aws::String m_package;
364 
365     Aws::String m_version;
366 
367     Aws::String m_versionRevision;
368 
369     Aws::String m_nextToken;
370 
371     Aws::Vector<PackageDependency> m_dependencies;
372   };
373 
374 } // namespace Model
375 } // namespace CodeArtifact
376 } // namespace Aws
377