class Aws::Partitions::Partition

def build(partition)

Other tags:
    Api: - private
def build(partition)
  Partition.new(
    name: partition['partition'],
    regions: build_regions(partition),
    region_regex: partition['regionRegex'],
    services: build_services(partition)
  )
end

def build_regions(partition)

Returns:
  • (Hash) -

Parameters:
  • partition (Hash) --
def build_regions(partition)
  partition['regions'].each_with_object({}) do |(region_name, region), regions|
    next if region_name == "#{partition['partition']}-global"
    regions[region_name] = Region.build(
      region_name, region, partition
    )
  end
end

def build_services(partition)

Returns:
  • (Hash) -

Parameters:
  • partition (Hash) --
def build_services(partition)
  Partitions.service_ids.each_with_object({}) do
    |(service_name, service), services|
    service_data = partition['services'].fetch(
      service, 'endpoints' => {}
    )
    services[service_name] = Service.build(
      service_name, service_data, partition
    )
  end
end

def initialize(options = {})

Other tags:
    Api: - private

Options Hash: (**options)
  • :services (required, Hash) --
  • :regions (required, Hash) --
  • :name (required, String) --
def initialize(options = {})
  @name = options[:name]
  @regions = options[:regions]
  @region_regex = options[:region_regex]
  @services = options[:services]
  @metadata = options[:metadata]
end

def region(region_name)

Raises:
  • (ArgumentError) - Raises `ArgumentError` for unknown region name.

Returns:
  • (Region) -

Parameters:
  • region_name (String) -- The name of the region, e.g. "us-east-1".
def region(region_name)
  if @regions.key?(region_name)
    @regions[region_name]
  else
    msg = "invalid region name #{region_name.inspect}; valid region "\
          "names include #{@regions.keys.join(', ')}"
    raise ArgumentError, msg
  end
end

def region?(region_name)

Returns:
  • (Boolean) - true if the region is in the partition.

Parameters:
  • region_name (String) -- The name of the region, e.g. "us-east-1".
def region?(region_name)
  @regions.key?(region_name)
end

def regions

Returns:
  • (Array) -
def regions
  @regions.values
end

def service(service_name)

Raises:
  • (ArgumentError) - Raises `ArgumentError` for unknown service name.

Returns:
  • (Service) -

Parameters:
  • service_name (String) -- The service module name.
def service(service_name)
  if @services.key?(service_name)
    @services[service_name]
  else
    msg = "invalid service name #{service_name.inspect}; valid service "\
          "names include #{@services.keys.join(', ')}"
    raise ArgumentError, msg
  end
end

def service?(service_name)

Returns:
  • (Boolean) - true if the service is in the partition.

Parameters:
  • service_name (String) -- The service module name.
def service?(service_name)
  @services.key?(service_name)
end

def services

Returns:
  • (Array) -
def services
  @services.values
end