class Aws::Plugins::EndpointPattern::Handler

def _apply_endpoint_trait(context, trait)

def _apply_endpoint_trait(context, trait)
  # currently only support host pattern
  ori_host = context.http_request.endpoint.host
  if pattern = trait['hostPrefix']
    host_prefix = pattern.gsub(/\{.+?\}/) do |label|
      label = label.delete("{}")
      _replace_label_value(
        ori_host, label, context.operation.input, context.params)
    end
    context.http_request.endpoint.host = host_prefix + context.http_request.endpoint.host
  end
end