S3Endpoint.h 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /**
  2. * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
  3. * SPDX-License-Identifier: Apache-2.0.
  4. */
  5. #pragma once
  6. #include <aws/s3/S3_EXPORTS.h>
  7. #include <aws/core/Region.h>
  8. #include <aws/core/utils/memory/stl/AWSString.h>
  9. #include <aws/s3/S3ARN.h>
  10. namespace Aws
  11. {
  12. namespace S3
  13. {
  14. namespace S3Endpoint
  15. {
  16. /**
  17. * Compute endpoint based on region.
  18. * @param regionName The AWS region used in the endpoint
  19. * @param useDualStack Using dual-stack endpoint if true
  20. * @param USEast1UseRegionalEndpoint Using global endpoint for us-east-1 if the value is LEGACY, or using regional endpoint if it's REGIONAL
  21. */
  22. AWS_S3_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false, bool USEast1UseRegionalEndpoint = false, const Aws::String& serviceName = "");
  23. /**
  24. * Compute endpoint based on Access Point ARN.
  25. * @param arn The S3 Access Point ARN
  26. * @param regionNameOverride Override region name in ARN if it's not empty
  27. * @param useDualStack Using dual-stack endpoint if true
  28. * @param endpointOverride Override endpoint if it's not empty
  29. */
  30. AWS_S3_API Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = "");
  31. /**
  32. * Compute endpoint based on Outposts ARN.
  33. * @param arn The S3 Outposts ARN
  34. * @param regionNameOverride Override region name in ARN if it's not empty
  35. * @param useDualStack Using dual-stack endpoint if true
  36. * @param endpointOverride Override endpoint if it's not empty
  37. */
  38. AWS_S3_API Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = "");
  39. /**
  40. * Compute endpoint based on Object Lambda Access Point ARN.
  41. * @param arn The S3 Object Lambda Access Point ARN
  42. * @param regionNameOverride Override region name in ARN if it's not empty
  43. * @param useDualStack Using dual-stack endpoint if true
  44. * @param endpointOverride Override endpoint if it's not empty
  45. */
  46. AWS_S3_API Aws::String ForObjectLambdaAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = "");
  47. } // namespace S3Endpoint
  48. } // namespace S3
  49. } // namespace Aws