Module: PagerDuty::Default

Defined in:
lib/pager_duty/default.rb

Overview

Default configuration options for Client

Constant Summary collapse

API_ENDPOINT =

Default API endpoint

"https://api.pagerduty.com".freeze
USER_AGENT =

Default User Agent header string

"PagerDuty Ruby Gem #{PagerDuty::VERSION}".freeze
MEDIA_TYPE =

Default media type

"application/vnd.pagerduty+json;version=2".freeze
RACK_BUILDER_CLASS =

In Faraday 0.9, Faraday::Builder was renamed to Faraday::RackBuilder

defined?(Faraday::RackBuilder) ? Faraday::RackBuilder : Faraday::Builder
MIDDLEWARE =

Default Faraday middleware stack

RACK_BUILDER_CLASS.new do |builder|
  builder.response :detailed_logger
  builder.use PagerDuty::Response::RaiseError
  builder.adapter Faraday.default_adapter
end

Class Method Summary collapse

Class Method Details

.api_endpointString

Default API endpoint from ENV or API_ENDPOINT

Returns:

  • (String)


44
45
46
# File 'lib/pager_duty/default.rb', line 44

def api_endpoint
  ENV['PAGERDUTY_API_ENDPOINT'] || API_ENDPOINT
end

.api_tokenString

Default access token from ENV

Returns:

  • (String)


38
39
40
# File 'lib/pager_duty/default.rb', line 38

def api_token
  ENV['PAGERDUTY_API_TOKEN']
end

.connection_optionsHash

Default options for Faraday::Connection

Returns:

  • (Hash)


50
51
52
53
54
55
56
57
# File 'lib/pager_duty/default.rb', line 50

def connection_options
  {
    :headers => {
      :accept => default_media_type,
      :user_agent => user_agent
    }
  }
end

.default_media_typeString

Default media type from ENV or MEDIA_TYPE

Returns:

  • (String)


68
69
70
# File 'lib/pager_duty/default.rb', line 68

def default_media_type
  MEDIA_TYPE
end

.middlewareFaraday::RackBuilder or Faraday::Builder

Default middleware stack for Faraday::Connection from MIDDLEWARE

Returns:

  • (Faraday::RackBuilder or Faraday::Builder)


62
63
64
# File 'lib/pager_duty/default.rb', line 62

def middleware
  MIDDLEWARE
end

.optionsHash

Configuration options

Returns:

  • (Hash)


32
33
34
# File 'lib/pager_duty/default.rb', line 32

def options
  Hash[PagerDuty::Configurable.keys.map{|key| [key, send(key)]}]
end

.user_agentString

Default User-Agent header string from ENV or USER_AGENT

Returns:

  • (String)


74
75
76
# File 'lib/pager_duty/default.rb', line 74

def user_agent
  USER_AGENT
end