S3EndpointProvider.cpp 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /**
  2. * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
  3. * SPDX-License-Identifier: Apache-2.0.
  4. */
  5. #include <aws/s3/S3EndpointProvider.h>
  6. namespace Aws
  7. {
  8. namespace S3
  9. {
  10. namespace Endpoint
  11. {
  12. void S3ClientContextParameters::SetForcePathStyle(bool value)
  13. {
  14. return SetBooleanParameter(Aws::String("ForcePathStyle"), value);
  15. }
  16. const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetForcePathStyle() const
  17. {
  18. return GetParameter("ForcePathStyle");
  19. }
  20. void S3ClientContextParameters::SetDisableMultiRegionAccessPoints(bool value)
  21. {
  22. return SetBooleanParameter(Aws::String("DisableMultiRegionAccessPoints"), value);
  23. }
  24. const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetDisableMultiRegionAccessPoints() const
  25. {
  26. return GetParameter("DisableMultiRegionAccessPoints");
  27. }
  28. void S3ClientContextParameters::SetUseArnRegion(bool value)
  29. {
  30. return SetBooleanParameter(Aws::String("UseArnRegion"), value);
  31. }
  32. const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetUseArnRegion() const
  33. {
  34. return GetParameter("UseArnRegion");
  35. }
  36. void S3ClientContextParameters::SetAccelerate(bool value)
  37. {
  38. return SetBooleanParameter(Aws::String("Accelerate"), value);
  39. }
  40. const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetAccelerate() const
  41. {
  42. return GetParameter("Accelerate");
  43. }
  44. void S3BuiltInParameters::SetFromClientConfiguration(const S3ClientConfiguration& config)
  45. {
  46. SetFromClientConfiguration(static_cast<const S3ClientConfiguration::BaseClientConfigClass&>(config));
  47. static const char* AWS_S3_USE_GLOBAL_ENDPOINT = "UseGlobalEndpoint";
  48. if (config.useUSEast1RegionalEndPointOption == US_EAST_1_REGIONAL_ENDPOINT_OPTION::LEGACY) {
  49. SetBooleanParameter(AWS_S3_USE_GLOBAL_ENDPOINT, true);
  50. }
  51. // Not supported by this SDK:
  52. // static const char* AWS_S3_ACCELERATE = "Accelerate";
  53. // static const char* AWS_S3_FORCE_PATH_STYLE = "ForcePathStyle";
  54. static const char* AWS_S3_USE_ARN_REGION = "UseArnRegion";
  55. SetBooleanParameter(AWS_S3_USE_ARN_REGION, config.useArnRegion);
  56. static const char* AWS_S3_DISABLE_MRAP = "DisableMultiRegionAccessPoints";
  57. SetBooleanParameter(AWS_S3_DISABLE_MRAP, config.disableMultiRegionAccessPoints);
  58. static const char* AWS_S3_FORCE_PATH_STYLE = "ForcePathStyle";
  59. if (!config.useVirtualAddressing) {
  60. SetBooleanParameter(AWS_S3_FORCE_PATH_STYLE, true);
  61. }
  62. }
  63. } // namespace Endpoint
  64. } // namespace S3
  65. } // namespace Aws