AWSNativeSDKTestManager.cpp 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #include <AWSNativeSDKTestManager.h>
  9. #include <AzCore/Module/Environment.h>
  10. #include <AzCore/Utils/Utils.h>
  11. #include <AWSNativeSDKInit/AWSLogSystemInterface.h>
  12. #include <aws/core/Aws.h>
  13. #include <aws/core/utils/logging/AWSLogging.h>
  14. namespace AWSNativeSDKTestLibs
  15. {
  16. AZ::EnvironmentVariable<AWSNativeSDKTestManager> AWSNativeSDKTestManager::s_sdkManager = nullptr;
  17. AWSNativeSDKTestManager::AWSNativeSDKTestManager()
  18. {
  19. AZ::Utils::SetEnv("AWS_DEFAULT_REGION", "us-east-1", 1);
  20. m_awsSDKOptions.memoryManagementOptions.memoryManager = &m_memoryManager;
  21. Aws::InitAPI(m_awsSDKOptions);
  22. }
  23. AWSNativeSDKTestManager::~AWSNativeSDKTestManager()
  24. {
  25. Aws::ShutdownAPI(m_awsSDKOptions);
  26. AZ::Utils::UnsetEnv("AWS_DEFAULT_REGION");
  27. }
  28. void AWSNativeSDKTestManager::Init()
  29. {
  30. s_sdkManager = AZ::Environment::CreateVariable<AWSNativeSDKTestManager>(AWSNativeSDKTestManager::SdkManagerTag);
  31. }
  32. void AWSNativeSDKTestManager::Shutdown()
  33. {
  34. s_sdkManager = nullptr;
  35. }
  36. }