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/chime/Chime_EXPORTS.h>
8 #include <aws/chime/ChimeRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/memory/stl/AWSMap.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Chime
16 {
17 namespace Model
18 {
19 
20   /**
21    */
22   class AWS_CHIME_API UpdateSipMediaApplicationCallRequest : public ChimeRequest
23   {
24   public:
25     UpdateSipMediaApplicationCallRequest();
26 
27     // Service request name is the Operation name which will send this request out,
28     // each operation should has unique request name, so that we can get operation's name from this request.
29     // Note: this is not true for response, multiple operations may have the same response name,
30     // so we can not get operation's name from response.
GetServiceRequestName()31     inline virtual const char* GetServiceRequestName() const override { return "UpdateSipMediaApplicationCall"; }
32 
33     Aws::String SerializePayload() const override;
34 
35 
36     /**
37      * <p>The ID of the SIP media application handling the call.</p>
38      */
GetSipMediaApplicationId()39     inline const Aws::String& GetSipMediaApplicationId() const{ return m_sipMediaApplicationId; }
40 
41     /**
42      * <p>The ID of the SIP media application handling the call.</p>
43      */
SipMediaApplicationIdHasBeenSet()44     inline bool SipMediaApplicationIdHasBeenSet() const { return m_sipMediaApplicationIdHasBeenSet; }
45 
46     /**
47      * <p>The ID of the SIP media application handling the call.</p>
48      */
SetSipMediaApplicationId(const Aws::String & value)49     inline void SetSipMediaApplicationId(const Aws::String& value) { m_sipMediaApplicationIdHasBeenSet = true; m_sipMediaApplicationId = value; }
50 
51     /**
52      * <p>The ID of the SIP media application handling the call.</p>
53      */
SetSipMediaApplicationId(Aws::String && value)54     inline void SetSipMediaApplicationId(Aws::String&& value) { m_sipMediaApplicationIdHasBeenSet = true; m_sipMediaApplicationId = std::move(value); }
55 
56     /**
57      * <p>The ID of the SIP media application handling the call.</p>
58      */
SetSipMediaApplicationId(const char * value)59     inline void SetSipMediaApplicationId(const char* value) { m_sipMediaApplicationIdHasBeenSet = true; m_sipMediaApplicationId.assign(value); }
60 
61     /**
62      * <p>The ID of the SIP media application handling the call.</p>
63      */
WithSipMediaApplicationId(const Aws::String & value)64     inline UpdateSipMediaApplicationCallRequest& WithSipMediaApplicationId(const Aws::String& value) { SetSipMediaApplicationId(value); return *this;}
65 
66     /**
67      * <p>The ID of the SIP media application handling the call.</p>
68      */
WithSipMediaApplicationId(Aws::String && value)69     inline UpdateSipMediaApplicationCallRequest& WithSipMediaApplicationId(Aws::String&& value) { SetSipMediaApplicationId(std::move(value)); return *this;}
70 
71     /**
72      * <p>The ID of the SIP media application handling the call.</p>
73      */
WithSipMediaApplicationId(const char * value)74     inline UpdateSipMediaApplicationCallRequest& WithSipMediaApplicationId(const char* value) { SetSipMediaApplicationId(value); return *this;}
75 
76 
77     /**
78      * <p>The ID of the call transaction.</p>
79      */
GetTransactionId()80     inline const Aws::String& GetTransactionId() const{ return m_transactionId; }
81 
82     /**
83      * <p>The ID of the call transaction.</p>
84      */
TransactionIdHasBeenSet()85     inline bool TransactionIdHasBeenSet() const { return m_transactionIdHasBeenSet; }
86 
87     /**
88      * <p>The ID of the call transaction.</p>
89      */
SetTransactionId(const Aws::String & value)90     inline void SetTransactionId(const Aws::String& value) { m_transactionIdHasBeenSet = true; m_transactionId = value; }
91 
92     /**
93      * <p>The ID of the call transaction.</p>
94      */
SetTransactionId(Aws::String && value)95     inline void SetTransactionId(Aws::String&& value) { m_transactionIdHasBeenSet = true; m_transactionId = std::move(value); }
96 
97     /**
98      * <p>The ID of the call transaction.</p>
99      */
SetTransactionId(const char * value)100     inline void SetTransactionId(const char* value) { m_transactionIdHasBeenSet = true; m_transactionId.assign(value); }
101 
102     /**
103      * <p>The ID of the call transaction.</p>
104      */
WithTransactionId(const Aws::String & value)105     inline UpdateSipMediaApplicationCallRequest& WithTransactionId(const Aws::String& value) { SetTransactionId(value); return *this;}
106 
107     /**
108      * <p>The ID of the call transaction.</p>
109      */
WithTransactionId(Aws::String && value)110     inline UpdateSipMediaApplicationCallRequest& WithTransactionId(Aws::String&& value) { SetTransactionId(std::move(value)); return *this;}
111 
112     /**
113      * <p>The ID of the call transaction.</p>
114      */
WithTransactionId(const char * value)115     inline UpdateSipMediaApplicationCallRequest& WithTransactionId(const char* value) { SetTransactionId(value); return *this;}
116 
117 
118     /**
119      * <p>Arguments made available to the Lambda function as part of the
120      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
121      */
GetArguments()122     inline const Aws::Map<Aws::String, Aws::String>& GetArguments() const{ return m_arguments; }
123 
124     /**
125      * <p>Arguments made available to the Lambda function as part of the
126      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
127      */
ArgumentsHasBeenSet()128     inline bool ArgumentsHasBeenSet() const { return m_argumentsHasBeenSet; }
129 
130     /**
131      * <p>Arguments made available to the Lambda function as part of the
132      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
133      */
SetArguments(const Aws::Map<Aws::String,Aws::String> & value)134     inline void SetArguments(const Aws::Map<Aws::String, Aws::String>& value) { m_argumentsHasBeenSet = true; m_arguments = value; }
135 
136     /**
137      * <p>Arguments made available to the Lambda function as part of the
138      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
139      */
SetArguments(Aws::Map<Aws::String,Aws::String> && value)140     inline void SetArguments(Aws::Map<Aws::String, Aws::String>&& value) { m_argumentsHasBeenSet = true; m_arguments = std::move(value); }
141 
142     /**
143      * <p>Arguments made available to the Lambda function as part of the
144      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
145      */
WithArguments(const Aws::Map<Aws::String,Aws::String> & value)146     inline UpdateSipMediaApplicationCallRequest& WithArguments(const Aws::Map<Aws::String, Aws::String>& value) { SetArguments(value); return *this;}
147 
148     /**
149      * <p>Arguments made available to the Lambda function as part of the
150      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
151      */
WithArguments(Aws::Map<Aws::String,Aws::String> && value)152     inline UpdateSipMediaApplicationCallRequest& WithArguments(Aws::Map<Aws::String, Aws::String>&& value) { SetArguments(std::move(value)); return *this;}
153 
154     /**
155      * <p>Arguments made available to the Lambda function as part of the
156      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
157      */
AddArguments(const Aws::String & key,const Aws::String & value)158     inline UpdateSipMediaApplicationCallRequest& AddArguments(const Aws::String& key, const Aws::String& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, value); return *this; }
159 
160     /**
161      * <p>Arguments made available to the Lambda function as part of the
162      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
163      */
AddArguments(Aws::String && key,const Aws::String & value)164     inline UpdateSipMediaApplicationCallRequest& AddArguments(Aws::String&& key, const Aws::String& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(std::move(key), value); return *this; }
165 
166     /**
167      * <p>Arguments made available to the Lambda function as part of the
168      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
169      */
AddArguments(const Aws::String & key,Aws::String && value)170     inline UpdateSipMediaApplicationCallRequest& AddArguments(const Aws::String& key, Aws::String&& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, std::move(value)); return *this; }
171 
172     /**
173      * <p>Arguments made available to the Lambda function as part of the
174      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
175      */
AddArguments(Aws::String && key,Aws::String && value)176     inline UpdateSipMediaApplicationCallRequest& AddArguments(Aws::String&& key, Aws::String&& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(std::move(key), std::move(value)); return *this; }
177 
178     /**
179      * <p>Arguments made available to the Lambda function as part of the
180      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
181      */
AddArguments(const char * key,Aws::String && value)182     inline UpdateSipMediaApplicationCallRequest& AddArguments(const char* key, Aws::String&& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, std::move(value)); return *this; }
183 
184     /**
185      * <p>Arguments made available to the Lambda function as part of the
186      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
187      */
AddArguments(Aws::String && key,const char * value)188     inline UpdateSipMediaApplicationCallRequest& AddArguments(Aws::String&& key, const char* value) { m_argumentsHasBeenSet = true; m_arguments.emplace(std::move(key), value); return *this; }
189 
190     /**
191      * <p>Arguments made available to the Lambda function as part of the
192      * <code>CALL_UPDATE_REQUESTED</code> event. Can contain 0-20 key-value pairs.</p>
193      */
AddArguments(const char * key,const char * value)194     inline UpdateSipMediaApplicationCallRequest& AddArguments(const char* key, const char* value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, value); return *this; }
195 
196   private:
197 
198     Aws::String m_sipMediaApplicationId;
199     bool m_sipMediaApplicationIdHasBeenSet;
200 
201     Aws::String m_transactionId;
202     bool m_transactionIdHasBeenSet;
203 
204     Aws::Map<Aws::String, Aws::String> m_arguments;
205     bool m_argumentsHasBeenSet;
206   };
207 
208 } // namespace Model
209 } // namespace Chime
210 } // namespace Aws
211