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/apigateway/APIGateway_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <utility>
10 
11 namespace Aws
12 {
13 template<typename RESULT_TYPE>
14 class AmazonWebServiceResult;
15 
16 namespace Utils
17 {
18 namespace Json
19 {
20   class JsonValue;
21 } // namespace Json
22 } // namespace Utils
23 namespace APIGateway
24 {
25 namespace Model
26 {
27   /**
28    * <p>Represents the base path that callers of the API must provide as part of the
29    * URL after the domain name.</p> <div class="remarks">A custom domain name plus a
30    * <code>BasePathMapping</code> specification identifies a deployed <a>RestApi</a>
31    * in a given stage of the owner <a>Account</a>.</div> <div class="seeAlso"> <a
32    * href="https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html">Use
33    * Custom Domain Names</a> </div><p><h3>See Also:</h3>   <a
34    * href="http://docs.aws.amazon.com/goto/WebAPI/apigateway-2015-07-09/BasePathMapping">AWS
35    * API Reference</a></p>
36    */
37   class AWS_APIGATEWAY_API CreateBasePathMappingResult
38   {
39   public:
40     CreateBasePathMappingResult();
41     CreateBasePathMappingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
42     CreateBasePathMappingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
43 
44 
45     /**
46      * <p>The base path name that callers of the API must provide as part of the URL
47      * after the domain name.</p>
48      */
GetBasePath()49     inline const Aws::String& GetBasePath() const{ return m_basePath; }
50 
51     /**
52      * <p>The base path name that callers of the API must provide as part of the URL
53      * after the domain name.</p>
54      */
SetBasePath(const Aws::String & value)55     inline void SetBasePath(const Aws::String& value) { m_basePath = value; }
56 
57     /**
58      * <p>The base path name that callers of the API must provide as part of the URL
59      * after the domain name.</p>
60      */
SetBasePath(Aws::String && value)61     inline void SetBasePath(Aws::String&& value) { m_basePath = std::move(value); }
62 
63     /**
64      * <p>The base path name that callers of the API must provide as part of the URL
65      * after the domain name.</p>
66      */
SetBasePath(const char * value)67     inline void SetBasePath(const char* value) { m_basePath.assign(value); }
68 
69     /**
70      * <p>The base path name that callers of the API must provide as part of the URL
71      * after the domain name.</p>
72      */
WithBasePath(const Aws::String & value)73     inline CreateBasePathMappingResult& WithBasePath(const Aws::String& value) { SetBasePath(value); return *this;}
74 
75     /**
76      * <p>The base path name that callers of the API must provide as part of the URL
77      * after the domain name.</p>
78      */
WithBasePath(Aws::String && value)79     inline CreateBasePathMappingResult& WithBasePath(Aws::String&& value) { SetBasePath(std::move(value)); return *this;}
80 
81     /**
82      * <p>The base path name that callers of the API must provide as part of the URL
83      * after the domain name.</p>
84      */
WithBasePath(const char * value)85     inline CreateBasePathMappingResult& WithBasePath(const char* value) { SetBasePath(value); return *this;}
86 
87 
88     /**
89      * <p>The string identifier of the associated <a>RestApi</a>.</p>
90      */
GetRestApiId()91     inline const Aws::String& GetRestApiId() const{ return m_restApiId; }
92 
93     /**
94      * <p>The string identifier of the associated <a>RestApi</a>.</p>
95      */
SetRestApiId(const Aws::String & value)96     inline void SetRestApiId(const Aws::String& value) { m_restApiId = value; }
97 
98     /**
99      * <p>The string identifier of the associated <a>RestApi</a>.</p>
100      */
SetRestApiId(Aws::String && value)101     inline void SetRestApiId(Aws::String&& value) { m_restApiId = std::move(value); }
102 
103     /**
104      * <p>The string identifier of the associated <a>RestApi</a>.</p>
105      */
SetRestApiId(const char * value)106     inline void SetRestApiId(const char* value) { m_restApiId.assign(value); }
107 
108     /**
109      * <p>The string identifier of the associated <a>RestApi</a>.</p>
110      */
WithRestApiId(const Aws::String & value)111     inline CreateBasePathMappingResult& WithRestApiId(const Aws::String& value) { SetRestApiId(value); return *this;}
112 
113     /**
114      * <p>The string identifier of the associated <a>RestApi</a>.</p>
115      */
WithRestApiId(Aws::String && value)116     inline CreateBasePathMappingResult& WithRestApiId(Aws::String&& value) { SetRestApiId(std::move(value)); return *this;}
117 
118     /**
119      * <p>The string identifier of the associated <a>RestApi</a>.</p>
120      */
WithRestApiId(const char * value)121     inline CreateBasePathMappingResult& WithRestApiId(const char* value) { SetRestApiId(value); return *this;}
122 
123 
124     /**
125      * <p>The name of the associated stage.</p>
126      */
GetStage()127     inline const Aws::String& GetStage() const{ return m_stage; }
128 
129     /**
130      * <p>The name of the associated stage.</p>
131      */
SetStage(const Aws::String & value)132     inline void SetStage(const Aws::String& value) { m_stage = value; }
133 
134     /**
135      * <p>The name of the associated stage.</p>
136      */
SetStage(Aws::String && value)137     inline void SetStage(Aws::String&& value) { m_stage = std::move(value); }
138 
139     /**
140      * <p>The name of the associated stage.</p>
141      */
SetStage(const char * value)142     inline void SetStage(const char* value) { m_stage.assign(value); }
143 
144     /**
145      * <p>The name of the associated stage.</p>
146      */
WithStage(const Aws::String & value)147     inline CreateBasePathMappingResult& WithStage(const Aws::String& value) { SetStage(value); return *this;}
148 
149     /**
150      * <p>The name of the associated stage.</p>
151      */
WithStage(Aws::String && value)152     inline CreateBasePathMappingResult& WithStage(Aws::String&& value) { SetStage(std::move(value)); return *this;}
153 
154     /**
155      * <p>The name of the associated stage.</p>
156      */
WithStage(const char * value)157     inline CreateBasePathMappingResult& WithStage(const char* value) { SetStage(value); return *this;}
158 
159   private:
160 
161     Aws::String m_basePath;
162 
163     Aws::String m_restApiId;
164 
165     Aws::String m_stage;
166   };
167 
168 } // namespace Model
169 } // namespace APIGateway
170 } // namespace Aws
171