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/medialive/MediaLive_EXPORTS.h>
8 #include <aws/medialive/MediaLiveRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace MediaLive
15 {
16 namespace Model
17 {
18 
19   /**
20    * A request to transfer an input device.<p><h3>See Also:</h3>   <a
21    * href="http://docs.aws.amazon.com/goto/WebAPI/medialive-2017-10-14/TransferInputDeviceRequest">AWS
22    * API Reference</a></p>
23    */
24   class AWS_MEDIALIVE_API TransferInputDeviceRequest : public MediaLiveRequest
25   {
26   public:
27     TransferInputDeviceRequest();
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 "TransferInputDevice"; }
34 
35     Aws::String SerializePayload() const override;
36 
37 
38     /**
39      * The unique ID of this input device. For example, hd-123456789abcdef.
40      */
GetInputDeviceId()41     inline const Aws::String& GetInputDeviceId() const{ return m_inputDeviceId; }
42 
43     /**
44      * The unique ID of this input device. For example, hd-123456789abcdef.
45      */
InputDeviceIdHasBeenSet()46     inline bool InputDeviceIdHasBeenSet() const { return m_inputDeviceIdHasBeenSet; }
47 
48     /**
49      * The unique ID of this input device. For example, hd-123456789abcdef.
50      */
SetInputDeviceId(const Aws::String & value)51     inline void SetInputDeviceId(const Aws::String& value) { m_inputDeviceIdHasBeenSet = true; m_inputDeviceId = value; }
52 
53     /**
54      * The unique ID of this input device. For example, hd-123456789abcdef.
55      */
SetInputDeviceId(Aws::String && value)56     inline void SetInputDeviceId(Aws::String&& value) { m_inputDeviceIdHasBeenSet = true; m_inputDeviceId = std::move(value); }
57 
58     /**
59      * The unique ID of this input device. For example, hd-123456789abcdef.
60      */
SetInputDeviceId(const char * value)61     inline void SetInputDeviceId(const char* value) { m_inputDeviceIdHasBeenSet = true; m_inputDeviceId.assign(value); }
62 
63     /**
64      * The unique ID of this input device. For example, hd-123456789abcdef.
65      */
WithInputDeviceId(const Aws::String & value)66     inline TransferInputDeviceRequest& WithInputDeviceId(const Aws::String& value) { SetInputDeviceId(value); return *this;}
67 
68     /**
69      * The unique ID of this input device. For example, hd-123456789abcdef.
70      */
WithInputDeviceId(Aws::String && value)71     inline TransferInputDeviceRequest& WithInputDeviceId(Aws::String&& value) { SetInputDeviceId(std::move(value)); return *this;}
72 
73     /**
74      * The unique ID of this input device. For example, hd-123456789abcdef.
75      */
WithInputDeviceId(const char * value)76     inline TransferInputDeviceRequest& WithInputDeviceId(const char* value) { SetInputDeviceId(value); return *this;}
77 
78 
79     /**
80      * The AWS account ID (12 digits) for the recipient of the device transfer.
81      */
GetTargetCustomerId()82     inline const Aws::String& GetTargetCustomerId() const{ return m_targetCustomerId; }
83 
84     /**
85      * The AWS account ID (12 digits) for the recipient of the device transfer.
86      */
TargetCustomerIdHasBeenSet()87     inline bool TargetCustomerIdHasBeenSet() const { return m_targetCustomerIdHasBeenSet; }
88 
89     /**
90      * The AWS account ID (12 digits) for the recipient of the device transfer.
91      */
SetTargetCustomerId(const Aws::String & value)92     inline void SetTargetCustomerId(const Aws::String& value) { m_targetCustomerIdHasBeenSet = true; m_targetCustomerId = value; }
93 
94     /**
95      * The AWS account ID (12 digits) for the recipient of the device transfer.
96      */
SetTargetCustomerId(Aws::String && value)97     inline void SetTargetCustomerId(Aws::String&& value) { m_targetCustomerIdHasBeenSet = true; m_targetCustomerId = std::move(value); }
98 
99     /**
100      * The AWS account ID (12 digits) for the recipient of the device transfer.
101      */
SetTargetCustomerId(const char * value)102     inline void SetTargetCustomerId(const char* value) { m_targetCustomerIdHasBeenSet = true; m_targetCustomerId.assign(value); }
103 
104     /**
105      * The AWS account ID (12 digits) for the recipient of the device transfer.
106      */
WithTargetCustomerId(const Aws::String & value)107     inline TransferInputDeviceRequest& WithTargetCustomerId(const Aws::String& value) { SetTargetCustomerId(value); return *this;}
108 
109     /**
110      * The AWS account ID (12 digits) for the recipient of the device transfer.
111      */
WithTargetCustomerId(Aws::String && value)112     inline TransferInputDeviceRequest& WithTargetCustomerId(Aws::String&& value) { SetTargetCustomerId(std::move(value)); return *this;}
113 
114     /**
115      * The AWS account ID (12 digits) for the recipient of the device transfer.
116      */
WithTargetCustomerId(const char * value)117     inline TransferInputDeviceRequest& WithTargetCustomerId(const char* value) { SetTargetCustomerId(value); return *this;}
118 
119 
120     /**
121      * The target AWS region to transfer the device.
122      */
GetTargetRegion()123     inline const Aws::String& GetTargetRegion() const{ return m_targetRegion; }
124 
125     /**
126      * The target AWS region to transfer the device.
127      */
TargetRegionHasBeenSet()128     inline bool TargetRegionHasBeenSet() const { return m_targetRegionHasBeenSet; }
129 
130     /**
131      * The target AWS region to transfer the device.
132      */
SetTargetRegion(const Aws::String & value)133     inline void SetTargetRegion(const Aws::String& value) { m_targetRegionHasBeenSet = true; m_targetRegion = value; }
134 
135     /**
136      * The target AWS region to transfer the device.
137      */
SetTargetRegion(Aws::String && value)138     inline void SetTargetRegion(Aws::String&& value) { m_targetRegionHasBeenSet = true; m_targetRegion = std::move(value); }
139 
140     /**
141      * The target AWS region to transfer the device.
142      */
SetTargetRegion(const char * value)143     inline void SetTargetRegion(const char* value) { m_targetRegionHasBeenSet = true; m_targetRegion.assign(value); }
144 
145     /**
146      * The target AWS region to transfer the device.
147      */
WithTargetRegion(const Aws::String & value)148     inline TransferInputDeviceRequest& WithTargetRegion(const Aws::String& value) { SetTargetRegion(value); return *this;}
149 
150     /**
151      * The target AWS region to transfer the device.
152      */
WithTargetRegion(Aws::String && value)153     inline TransferInputDeviceRequest& WithTargetRegion(Aws::String&& value) { SetTargetRegion(std::move(value)); return *this;}
154 
155     /**
156      * The target AWS region to transfer the device.
157      */
WithTargetRegion(const char * value)158     inline TransferInputDeviceRequest& WithTargetRegion(const char* value) { SetTargetRegion(value); return *this;}
159 
160 
161     /**
162      * An optional message for the recipient. Maximum 280 characters.
163      */
GetTransferMessage()164     inline const Aws::String& GetTransferMessage() const{ return m_transferMessage; }
165 
166     /**
167      * An optional message for the recipient. Maximum 280 characters.
168      */
TransferMessageHasBeenSet()169     inline bool TransferMessageHasBeenSet() const { return m_transferMessageHasBeenSet; }
170 
171     /**
172      * An optional message for the recipient. Maximum 280 characters.
173      */
SetTransferMessage(const Aws::String & value)174     inline void SetTransferMessage(const Aws::String& value) { m_transferMessageHasBeenSet = true; m_transferMessage = value; }
175 
176     /**
177      * An optional message for the recipient. Maximum 280 characters.
178      */
SetTransferMessage(Aws::String && value)179     inline void SetTransferMessage(Aws::String&& value) { m_transferMessageHasBeenSet = true; m_transferMessage = std::move(value); }
180 
181     /**
182      * An optional message for the recipient. Maximum 280 characters.
183      */
SetTransferMessage(const char * value)184     inline void SetTransferMessage(const char* value) { m_transferMessageHasBeenSet = true; m_transferMessage.assign(value); }
185 
186     /**
187      * An optional message for the recipient. Maximum 280 characters.
188      */
WithTransferMessage(const Aws::String & value)189     inline TransferInputDeviceRequest& WithTransferMessage(const Aws::String& value) { SetTransferMessage(value); return *this;}
190 
191     /**
192      * An optional message for the recipient. Maximum 280 characters.
193      */
WithTransferMessage(Aws::String && value)194     inline TransferInputDeviceRequest& WithTransferMessage(Aws::String&& value) { SetTransferMessage(std::move(value)); return *this;}
195 
196     /**
197      * An optional message for the recipient. Maximum 280 characters.
198      */
WithTransferMessage(const char * value)199     inline TransferInputDeviceRequest& WithTransferMessage(const char* value) { SetTransferMessage(value); return *this;}
200 
201   private:
202 
203     Aws::String m_inputDeviceId;
204     bool m_inputDeviceIdHasBeenSet;
205 
206     Aws::String m_targetCustomerId;
207     bool m_targetCustomerIdHasBeenSet;
208 
209     Aws::String m_targetRegion;
210     bool m_targetRegionHasBeenSet;
211 
212     Aws::String m_transferMessage;
213     bool m_transferMessageHasBeenSet;
214   };
215 
216 } // namespace Model
217 } // namespace MediaLive
218 } // namespace Aws
219