class Aws::S3::MultiRegionAccessPointARN

@api private

Attributes

mrap_alias[R]

Public Class Methods

new(options) click to toggle source
Calls superclass method
# File lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb, line 7
def initialize(options)
  super(options)
  @type, @mrap_alias, @extra = @resource.split(/[:,\/]/)
end

Public Instance Methods

host_url(region, fips = false, dualstack = false, custom_endpoint = nil) click to toggle source
# File lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb, line 58
def host_url(region, fips = false, dualstack = false, custom_endpoint = nil)
  if custom_endpoint
    "#{@mrap_alias}.#{custom_endpoint}"
  else

    sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(@partition)
    "#{@mrap_alias}.accesspoint.s3-global.#{sfx}"
  end
end
support_dualstack?() click to toggle source
# File lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb, line 14
def support_dualstack?
  false
end
support_fips?() click to toggle source
# File lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb, line 18
def support_fips?
  false
end
validate_arn!() click to toggle source
# File lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb, line 22
def validate_arn!
  unless @service == 's3'
    raise ArgumentError,
          'Must provide a valid S3 multi-region access point ARN.'
  end

  if @account_id.empty?
    raise ArgumentError,
          'S3 multi-region access point ARNs must contain '\
          'an account id.'
  end

  unless @region.empty?
    raise ArgumentError,
          'Multi-region access points must have an empty region.'
  end

  if @type != 'accesspoint'
    raise ArgumentError, 'Invalid ARN, resource format is not correct'
  end

  if @mrap_alias.nil? || @mrap_alias.empty?
    raise ArgumentError, 'Missing ARN multi-region access points alias.'
  end

  unless @mrap_alias.split('.').all? { |s| Seahorse::Util.host_label?(s) }
    raise ArgumentError, "#{@mrap_alias} is not a valid "\
          'multi region access point alias.'
  end

  if @extra
    raise ArgumentError,
          'ARN access point resource must be a single value.'
  end
end