Files
o3de/Gems/AWSClientAuth/Code/Include/Public/Authorization/ClientAuthAWSCredentials.h
T
Artur K 3a4937456a Build time reduction: AzStdOnDemandReflection (#3111)
* Move a few specializations from AzStdOnDemandReflection.inl to cpp file

This reduces compilation time and produced profile/debug file sizes.

The specializations for string and string_view are only implemented for 'char' type, since
others are not used anywhere.

Extracted `Reflect` method from `ClientAuthAWSCredentials` to a cpp file.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Windows build fixes.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Added missing license.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Fix missing spaces in template argument lists

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Clang format on ClientAuthAWSCredentials.cpp

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>

* Merge upstream development and fix linux build.

Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
2021-09-09 19:08:33 -05:00

70 lines
1.8 KiB
C++

/*
* Copyright (c) Contributors to the Open 3D Engine Project.
* For complete copyright and license terms please see the LICENSE at the root of this distribution.
*
* SPDX-License-Identifier: Apache-2.0 OR MIT
*
*/
#pragma once
#include <AzCore/std/string/string.h>
#include <aws/core/auth/AWSCredentialsProvider.h>
namespace AZ
{
class ReflectContext;
}
namespace AWSClientAuth
{
//! Client auth AWS Credentials object for serialization.
class ClientAuthAWSCredentials
{
public:
AZ_TYPE_INFO(ClientAuthAWSCredentials, "{02FB32C4-B94E-4084-9049-3DF32F87BD76}");
ClientAuthAWSCredentials() = default;
ClientAuthAWSCredentials(const ClientAuthAWSCredentials& other)
: m_accessKeyId(other.m_accessKeyId)
, m_secretKey(other.m_secretKey)
, m_sessionToken(other.m_sessionToken)
{
}
ClientAuthAWSCredentials(const AZStd::string& accessKeyId, const AZStd::string& secretKey, const AZStd::string& sessionToken)
{
m_accessKeyId = accessKeyId;
m_secretKey = secretKey;
m_sessionToken = sessionToken;
}
//! Gets the access key
inline const AZStd::string& GetAWSAccessKeyId() const
{
return m_accessKeyId;
}
//! Gets the secret key
inline const AZStd::string& GetAWSSecretKey() const
{
return m_secretKey;
}
//! Gets the session token
inline const AZStd::string& GetSessionToken() const
{
return m_sessionToken;
}
static void Reflect(AZ::ReflectContext* context);
private:
AZStd::string m_accessKeyId;
AZStd::string m_secretKey;
AZStd::string m_sessionToken;
};
} // namespace AWSClientAuth