AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
SigV4Authorization.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/iot/IoT_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace IoT {
20namespace Model {
21
30 public:
31 AWS_IOT_API SigV4Authorization() = default;
35
37
40 inline const Aws::String& GetSigningRegion() const { return m_signingRegion; }
41 inline bool SigningRegionHasBeenSet() const { return m_signingRegionHasBeenSet; }
42 template <typename SigningRegionT = Aws::String>
43 void SetSigningRegion(SigningRegionT&& value) {
44 m_signingRegionHasBeenSet = true;
45 m_signingRegion = std::forward<SigningRegionT>(value);
46 }
47 template <typename SigningRegionT = Aws::String>
48 SigV4Authorization& WithSigningRegion(SigningRegionT&& value) {
49 SetSigningRegion(std::forward<SigningRegionT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetServiceName() const { return m_serviceName; }
59 inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; }
60 template <typename ServiceNameT = Aws::String>
61 void SetServiceName(ServiceNameT&& value) {
62 m_serviceNameHasBeenSet = true;
63 m_serviceName = std::forward<ServiceNameT>(value);
64 }
65 template <typename ServiceNameT = Aws::String>
66 SigV4Authorization& WithServiceName(ServiceNameT&& value) {
67 SetServiceName(std::forward<ServiceNameT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
77 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
78 template <typename RoleArnT = Aws::String>
79 void SetRoleArn(RoleArnT&& value) {
80 m_roleArnHasBeenSet = true;
81 m_roleArn = std::forward<RoleArnT>(value);
82 }
83 template <typename RoleArnT = Aws::String>
84 SigV4Authorization& WithRoleArn(RoleArnT&& value) {
85 SetRoleArn(std::forward<RoleArnT>(value));
86 return *this;
87 }
89 private:
90 Aws::String m_signingRegion;
91
92 Aws::String m_serviceName;
93
94 Aws::String m_roleArn;
95 bool m_signingRegionHasBeenSet = false;
96 bool m_serviceNameHasBeenSet = false;
97 bool m_roleArnHasBeenSet = false;
98};
99
100} // namespace Model
101} // namespace IoT
102} // namespace Aws
const Aws::String & GetSigningRegion() const
AWS_IOT_API SigV4Authorization & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetSigningRegion(SigningRegionT &&value)
SigV4Authorization & WithServiceName(ServiceNameT &&value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetRoleArn() const
void SetServiceName(ServiceNameT &&value)
AWS_IOT_API SigV4Authorization()=default
AWS_IOT_API SigV4Authorization(Aws::Utils::Json::JsonView jsonValue)
SigV4Authorization & WithRoleArn(RoleArnT &&value)
SigV4Authorization & WithSigningRegion(SigningRegionT &&value)
const Aws::String & GetServiceName() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue