Sha256: 79030f37b4552d93ba14e30d8e6c3f220b9b685c4f2ada825f473c0d1c1f2d05

Contents?: true

Size: 614 Bytes

Versions: 2

Compression:

Stored size: 614 Bytes

Contents

module Jets::CommonMethods
  extend Memoist
  # Add API Gateway Stage Name
  def add_stage_name(url)
    return url unless add_stage?(url)

    stage_name = Jets::Resource::ApiGateway::Deployment.stage_name
    "/#{stage_name}#{url}"
  end

  def add_stage?(url)
    return false if on_cloud9?
    request.host.include?("amazonaws.com") && url.starts_with?('/')
  end
  memoize :add_stage?

  def on_aws?
    !request.headers['HTTP_X_AMZN_TRACE_ID'].nil? && !on_cloud9?
  end
  memoize :on_aws?

  def on_cloud9?
    !!(request.headers['HTTP_HOST'] =~ /cloud9\..*\.amazonaws\.com/)
  end
  memoize :on_cloud9?
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
jets-1.9.1 lib/jets/overrides/rails/common_methods.rb
jets-1.9.0 lib/jets/overrides/rails/common_methods.rb