AWS SDK for C++  0.12.9
AWS SDK for C++
AttachThingPrincipalRequest.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/iot/IoT_EXPORTS.h>
17 #include <aws/iot/IoTRequest.h>
19 
20 namespace Aws
21 {
22 namespace IoT
23 {
24 namespace Model
25 {
26 
31  {
32  public:
34  Aws::String SerializePayload() const override;
35 
36  Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
37 
41  inline const Aws::String& GetThingName() const{ return m_thingName; }
42 
46  inline void SetThingName(const Aws::String& value) { m_thingNameHasBeenSet = true; m_thingName = value; }
47 
51  inline void SetThingName(Aws::String&& value) { m_thingNameHasBeenSet = true; m_thingName = value; }
52 
56  inline void SetThingName(const char* value) { m_thingNameHasBeenSet = true; m_thingName.assign(value); }
57 
61  inline AttachThingPrincipalRequest& WithThingName(const Aws::String& value) { SetThingName(value); return *this;}
62 
66  inline AttachThingPrincipalRequest& WithThingName(Aws::String&& value) { SetThingName(value); return *this;}
67 
71  inline AttachThingPrincipalRequest& WithThingName(const char* value) { SetThingName(value); return *this;}
72 
76  inline const Aws::String& GetPrincipal() const{ return m_principal; }
77 
81  inline void SetPrincipal(const Aws::String& value) { m_principalHasBeenSet = true; m_principal = value; }
82 
86  inline void SetPrincipal(Aws::String&& value) { m_principalHasBeenSet = true; m_principal = value; }
87 
91  inline void SetPrincipal(const char* value) { m_principalHasBeenSet = true; m_principal.assign(value); }
92 
96  inline AttachThingPrincipalRequest& WithPrincipal(const Aws::String& value) { SetPrincipal(value); return *this;}
97 
101  inline AttachThingPrincipalRequest& WithPrincipal(Aws::String&& value) { SetPrincipal(value); return *this;}
102 
106  inline AttachThingPrincipalRequest& WithPrincipal(const char* value) { SetPrincipal(value); return *this;}
107 
108  private:
109  Aws::String m_thingName;
110  bool m_thingNameHasBeenSet;
111  Aws::String m_principal;
112  bool m_principalHasBeenSet;
113  };
114 
115 } // namespace Model
116 } // namespace IoT
117 } // namespace Aws
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:63
AttachThingPrincipalRequest & WithThingName(const char *value)
AttachThingPrincipalRequest & WithThingName(const Aws::String &value)
#define AWS_IOT_API
Definition: IoT_EXPORTS.h:34
AttachThingPrincipalRequest & WithThingName(Aws::String &&value)
AttachThingPrincipalRequest & WithPrincipal(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
AttachThingPrincipalRequest & WithPrincipal(Aws::String &&value)
AttachThingPrincipalRequest & WithPrincipal(const char *value)
JSON (JavaScript Object Notation).