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/dataexchange/DataExchange_EXPORTS.h>
8 #include <aws/dataexchange/DataExchangeRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace DataExchange
15 {
16 namespace Model
17 {
18 
19   /**
20    * <p>The request body for UpdateAsset.</p><p><h3>See Also:</h3>   <a
21    * href="http://docs.aws.amazon.com/goto/WebAPI/dataexchange-2017-07-25/UpdateAssetRequest">AWS
22    * API Reference</a></p>
23    */
24   class AWS_DATAEXCHANGE_API UpdateAssetRequest : public DataExchangeRequest
25   {
26   public:
27     UpdateAssetRequest();
28 
29     // Service request name is the Operation name which will send this request out,
30     // each operation should has unique request name, so that we can get operation's name from this request.
31     // Note: this is not true for response, multiple operations may have the same response name,
32     // so we can not get operation's name from response.
GetServiceRequestName()33     inline virtual const char* GetServiceRequestName() const override { return "UpdateAsset"; }
34 
35     Aws::String SerializePayload() const override;
36 
37 
38     /**
39      * <p>The unique identifier for an asset.</p>
40      */
GetAssetId()41     inline const Aws::String& GetAssetId() const{ return m_assetId; }
42 
43     /**
44      * <p>The unique identifier for an asset.</p>
45      */
AssetIdHasBeenSet()46     inline bool AssetIdHasBeenSet() const { return m_assetIdHasBeenSet; }
47 
48     /**
49      * <p>The unique identifier for an asset.</p>
50      */
SetAssetId(const Aws::String & value)51     inline void SetAssetId(const Aws::String& value) { m_assetIdHasBeenSet = true; m_assetId = value; }
52 
53     /**
54      * <p>The unique identifier for an asset.</p>
55      */
SetAssetId(Aws::String && value)56     inline void SetAssetId(Aws::String&& value) { m_assetIdHasBeenSet = true; m_assetId = std::move(value); }
57 
58     /**
59      * <p>The unique identifier for an asset.</p>
60      */
SetAssetId(const char * value)61     inline void SetAssetId(const char* value) { m_assetIdHasBeenSet = true; m_assetId.assign(value); }
62 
63     /**
64      * <p>The unique identifier for an asset.</p>
65      */
WithAssetId(const Aws::String & value)66     inline UpdateAssetRequest& WithAssetId(const Aws::String& value) { SetAssetId(value); return *this;}
67 
68     /**
69      * <p>The unique identifier for an asset.</p>
70      */
WithAssetId(Aws::String && value)71     inline UpdateAssetRequest& WithAssetId(Aws::String&& value) { SetAssetId(std::move(value)); return *this;}
72 
73     /**
74      * <p>The unique identifier for an asset.</p>
75      */
WithAssetId(const char * value)76     inline UpdateAssetRequest& WithAssetId(const char* value) { SetAssetId(value); return *this;}
77 
78 
79     /**
80      * <p>The unique identifier for a data set.</p>
81      */
GetDataSetId()82     inline const Aws::String& GetDataSetId() const{ return m_dataSetId; }
83 
84     /**
85      * <p>The unique identifier for a data set.</p>
86      */
DataSetIdHasBeenSet()87     inline bool DataSetIdHasBeenSet() const { return m_dataSetIdHasBeenSet; }
88 
89     /**
90      * <p>The unique identifier for a data set.</p>
91      */
SetDataSetId(const Aws::String & value)92     inline void SetDataSetId(const Aws::String& value) { m_dataSetIdHasBeenSet = true; m_dataSetId = value; }
93 
94     /**
95      * <p>The unique identifier for a data set.</p>
96      */
SetDataSetId(Aws::String && value)97     inline void SetDataSetId(Aws::String&& value) { m_dataSetIdHasBeenSet = true; m_dataSetId = std::move(value); }
98 
99     /**
100      * <p>The unique identifier for a data set.</p>
101      */
SetDataSetId(const char * value)102     inline void SetDataSetId(const char* value) { m_dataSetIdHasBeenSet = true; m_dataSetId.assign(value); }
103 
104     /**
105      * <p>The unique identifier for a data set.</p>
106      */
WithDataSetId(const Aws::String & value)107     inline UpdateAssetRequest& WithDataSetId(const Aws::String& value) { SetDataSetId(value); return *this;}
108 
109     /**
110      * <p>The unique identifier for a data set.</p>
111      */
WithDataSetId(Aws::String && value)112     inline UpdateAssetRequest& WithDataSetId(Aws::String&& value) { SetDataSetId(std::move(value)); return *this;}
113 
114     /**
115      * <p>The unique identifier for a data set.</p>
116      */
WithDataSetId(const char * value)117     inline UpdateAssetRequest& WithDataSetId(const char* value) { SetDataSetId(value); return *this;}
118 
119 
120     /**
121      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
122      * used as the asset name. When exporting to Amazon S3, the asset name is used as
123      * default target S3 object key.</p>
124      */
GetName()125     inline const Aws::String& GetName() const{ return m_name; }
126 
127     /**
128      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
129      * used as the asset name. When exporting to Amazon S3, the asset name is used as
130      * default target S3 object key.</p>
131      */
NameHasBeenSet()132     inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
133 
134     /**
135      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
136      * used as the asset name. When exporting to Amazon S3, the asset name is used as
137      * default target S3 object key.</p>
138      */
SetName(const Aws::String & value)139     inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
140 
141     /**
142      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
143      * used as the asset name. When exporting to Amazon S3, the asset name is used as
144      * default target S3 object key.</p>
145      */
SetName(Aws::String && value)146     inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
147 
148     /**
149      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
150      * used as the asset name. When exporting to Amazon S3, the asset name is used as
151      * default target S3 object key.</p>
152      */
SetName(const char * value)153     inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
154 
155     /**
156      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
157      * used as the asset name. When exporting to Amazon S3, the asset name is used as
158      * default target S3 object key.</p>
159      */
WithName(const Aws::String & value)160     inline UpdateAssetRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
161 
162     /**
163      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
164      * used as the asset name. When exporting to Amazon S3, the asset name is used as
165      * default target S3 object key.</p>
166      */
WithName(Aws::String && value)167     inline UpdateAssetRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
168 
169     /**
170      * <p>The name of the asset. When importing from Amazon S3, the S3 object key is
171      * used as the asset name. When exporting to Amazon S3, the asset name is used as
172      * default target S3 object key.</p>
173      */
WithName(const char * value)174     inline UpdateAssetRequest& WithName(const char* value) { SetName(value); return *this;}
175 
176 
177     /**
178      * <p>The unique identifier for a revision.</p>
179      */
GetRevisionId()180     inline const Aws::String& GetRevisionId() const{ return m_revisionId; }
181 
182     /**
183      * <p>The unique identifier for a revision.</p>
184      */
RevisionIdHasBeenSet()185     inline bool RevisionIdHasBeenSet() const { return m_revisionIdHasBeenSet; }
186 
187     /**
188      * <p>The unique identifier for a revision.</p>
189      */
SetRevisionId(const Aws::String & value)190     inline void SetRevisionId(const Aws::String& value) { m_revisionIdHasBeenSet = true; m_revisionId = value; }
191 
192     /**
193      * <p>The unique identifier for a revision.</p>
194      */
SetRevisionId(Aws::String && value)195     inline void SetRevisionId(Aws::String&& value) { m_revisionIdHasBeenSet = true; m_revisionId = std::move(value); }
196 
197     /**
198      * <p>The unique identifier for a revision.</p>
199      */
SetRevisionId(const char * value)200     inline void SetRevisionId(const char* value) { m_revisionIdHasBeenSet = true; m_revisionId.assign(value); }
201 
202     /**
203      * <p>The unique identifier for a revision.</p>
204      */
WithRevisionId(const Aws::String & value)205     inline UpdateAssetRequest& WithRevisionId(const Aws::String& value) { SetRevisionId(value); return *this;}
206 
207     /**
208      * <p>The unique identifier for a revision.</p>
209      */
WithRevisionId(Aws::String && value)210     inline UpdateAssetRequest& WithRevisionId(Aws::String&& value) { SetRevisionId(std::move(value)); return *this;}
211 
212     /**
213      * <p>The unique identifier for a revision.</p>
214      */
WithRevisionId(const char * value)215     inline UpdateAssetRequest& WithRevisionId(const char* value) { SetRevisionId(value); return *this;}
216 
217   private:
218 
219     Aws::String m_assetId;
220     bool m_assetIdHasBeenSet;
221 
222     Aws::String m_dataSetId;
223     bool m_dataSetIdHasBeenSet;
224 
225     Aws::String m_name;
226     bool m_nameHasBeenSet;
227 
228     Aws::String m_revisionId;
229     bool m_revisionIdHasBeenSet;
230   };
231 
232 } // namespace Model
233 } // namespace DataExchange
234 } // namespace Aws
235