AWS SDK for C++  0.14.3
AWS SDK for C++
Credentials.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/sts/STS_EXPORTS.h>
20 
21 namespace Aws
22 {
23 namespace Utils
24 {
25 namespace Xml
26 {
27  class XmlNode;
28 } // namespace Xml
29 } // namespace Utils
30 namespace STS
31 {
32 namespace Model
33 {
34 
39  {
40  public:
41  Credentials();
42  Credentials(const Aws::Utils::Xml::XmlNode& xmlNode);
43  Credentials& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
44 
45  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46  void OutputToStream(Aws::OStream& oStream, const char* location) const;
47 
51  inline const Aws::String& GetAccessKeyId() const{ return m_accessKeyId; }
52 
56  inline void SetAccessKeyId(const Aws::String& value) { m_accessKeyIdHasBeenSet = true; m_accessKeyId = value; }
57 
61  inline void SetAccessKeyId(Aws::String&& value) { m_accessKeyIdHasBeenSet = true; m_accessKeyId = value; }
62 
66  inline void SetAccessKeyId(const char* value) { m_accessKeyIdHasBeenSet = true; m_accessKeyId.assign(value); }
67 
71  inline Credentials& WithAccessKeyId(const Aws::String& value) { SetAccessKeyId(value); return *this;}
72 
76  inline Credentials& WithAccessKeyId(Aws::String&& value) { SetAccessKeyId(value); return *this;}
77 
81  inline Credentials& WithAccessKeyId(const char* value) { SetAccessKeyId(value); return *this;}
82 
86  inline const Aws::String& GetSecretAccessKey() const{ return m_secretAccessKey; }
87 
91  inline void SetSecretAccessKey(const Aws::String& value) { m_secretAccessKeyHasBeenSet = true; m_secretAccessKey = value; }
92 
96  inline void SetSecretAccessKey(Aws::String&& value) { m_secretAccessKeyHasBeenSet = true; m_secretAccessKey = value; }
97 
101  inline void SetSecretAccessKey(const char* value) { m_secretAccessKeyHasBeenSet = true; m_secretAccessKey.assign(value); }
102 
106  inline Credentials& WithSecretAccessKey(const Aws::String& value) { SetSecretAccessKey(value); return *this;}
107 
111  inline Credentials& WithSecretAccessKey(Aws::String&& value) { SetSecretAccessKey(value); return *this;}
112 
116  inline Credentials& WithSecretAccessKey(const char* value) { SetSecretAccessKey(value); return *this;}
117 
122  inline const Aws::String& GetSessionToken() const{ return m_sessionToken; }
123 
128  inline void SetSessionToken(const Aws::String& value) { m_sessionTokenHasBeenSet = true; m_sessionToken = value; }
129 
134  inline void SetSessionToken(Aws::String&& value) { m_sessionTokenHasBeenSet = true; m_sessionToken = value; }
135 
140  inline void SetSessionToken(const char* value) { m_sessionTokenHasBeenSet = true; m_sessionToken.assign(value); }
141 
146  inline Credentials& WithSessionToken(const Aws::String& value) { SetSessionToken(value); return *this;}
147 
152  inline Credentials& WithSessionToken(Aws::String&& value) { SetSessionToken(value); return *this;}
153 
158  inline Credentials& WithSessionToken(const char* value) { SetSessionToken(value); return *this;}
159 
163  inline const Aws::Utils::DateTime& GetExpiration() const{ return m_expiration; }
164 
168  inline void SetExpiration(const Aws::Utils::DateTime& value) { m_expirationHasBeenSet = true; m_expiration = value; }
169 
173  inline void SetExpiration(Aws::Utils::DateTime&& value) { m_expirationHasBeenSet = true; m_expiration = value; }
174 
178  inline Credentials& WithExpiration(const Aws::Utils::DateTime& value) { SetExpiration(value); return *this;}
179 
183  inline Credentials& WithExpiration(Aws::Utils::DateTime&& value) { SetExpiration(value); return *this;}
184 
185  private:
186  Aws::String m_accessKeyId;
187  bool m_accessKeyIdHasBeenSet;
188  Aws::String m_secretAccessKey;
189  bool m_secretAccessKeyHasBeenSet;
190  Aws::String m_sessionToken;
191  bool m_sessionTokenHasBeenSet;
192  Aws::Utils::DateTime m_expiration;
193  bool m_expirationHasBeenSet;
194  };
195 
196 } // namespace Model
197 } // namespace STS
198 } // namespace Aws
#define AWS_STS_API
Definition: STS_EXPORTS.h:37
Credentials & WithSessionToken(const char *value)
Definition: Credentials.h:158
void SetSessionToken(const char *value)
Definition: Credentials.h:140
Credentials & WithAccessKeyId(const Aws::String &value)
Definition: Credentials.h:71
const Aws::String & GetAccessKeyId() const
Definition: Credentials.h:51
void SetSecretAccessKey(const Aws::String &value)
Definition: Credentials.h:91
void SetExpiration(Aws::Utils::DateTime &&value)
Definition: Credentials.h:173
void SetSessionToken(Aws::String &&value)
Definition: Credentials.h:134
Credentials & WithExpiration(Aws::Utils::DateTime &&value)
Definition: Credentials.h:183
const Aws::Utils::DateTime & GetExpiration() const
Definition: Credentials.h:163
void SetAccessKeyId(Aws::String &&value)
Definition: Credentials.h:61
const Aws::String & GetSessionToken() const
Definition: Credentials.h:122
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
Credentials & WithSessionToken(const Aws::String &value)
Definition: Credentials.h:146
Credentials & WithSecretAccessKey(const char *value)
Definition: Credentials.h:116
void SetExpiration(const Aws::Utils::DateTime &value)
Definition: Credentials.h:168
void SetSecretAccessKey(Aws::String &&value)
Definition: Credentials.h:96
Credentials & WithAccessKeyId(Aws::String &&value)
Definition: Credentials.h:76
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Credentials & WithSessionToken(Aws::String &&value)
Definition: Credentials.h:152
void SetAccessKeyId(const Aws::String &value)
Definition: Credentials.h:56
void SetAccessKeyId(const char *value)
Definition: Credentials.h:66
Credentials & WithSecretAccessKey(Aws::String &&value)
Definition: Credentials.h:111
const Aws::String & GetSecretAccessKey() const
Definition: Credentials.h:86
void SetSessionToken(const Aws::String &value)
Definition: Credentials.h:128
Credentials & WithExpiration(const Aws::Utils::DateTime &value)
Definition: Credentials.h:178
Credentials & WithAccessKeyId(const char *value)
Definition: Credentials.h:81
Credentials & WithSecretAccessKey(const Aws::String &value)
Definition: Credentials.h:106
void SetSecretAccessKey(const char *value)
Definition: Credentials.h:101
JSON (JavaScript Object Notation).