Class: PostmarkClient::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/postmark_client/configuration.rb

Overview

Configuration class for PostmarkClient gem. Stores global settings that apply to all API clients.

Examples:

Configuring the gem in a Rails initializer

# config/initializers/postmark_ruby_client.rb
PostmarkClient.configure do |config|
  config.api_token = ENV["POSTMARK_API_TOKEN"]
  config.default_message_stream = "outbound"
  config.timeout = 60
end

Accessing configuration

PostmarkClient.configuration.api_token

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Initialize configuration with default values



38
39
40
41
42
43
44
45
# File 'lib/postmark_client/configuration.rb', line 38

def initialize
  @api_token = ENV.fetch("POSTMARK_API_TOKEN", nil)
  @default_message_stream = "outbound"
  @timeout = 30
  @open_timeout = 10
  @track_opens = false
  @track_links = "None"
end

Instance Attribute Details

#api_tokenString?

Returns the Postmark server API token.

Returns:

  • (String, nil)

    the Postmark server API token



19
20
21
# File 'lib/postmark_client/configuration.rb', line 19

def api_token
  @api_token
end

#default_message_streamString

Returns the default message stream for emails (default: “outbound”).

Returns:

  • (String)

    the default message stream for emails (default: “outbound”)



22
23
24
# File 'lib/postmark_client/configuration.rb', line 22

def default_message_stream
  @default_message_stream
end

#open_timeoutInteger

Returns connection open timeout in seconds (default: 10).

Returns:

  • (Integer)

    connection open timeout in seconds (default: 10)



28
29
30
# File 'lib/postmark_client/configuration.rb', line 28

def open_timeout
  @open_timeout
end

#timeoutInteger

Returns request timeout in seconds (default: 30).

Returns:

  • (Integer)

    request timeout in seconds (default: 30)



25
26
27
# File 'lib/postmark_client/configuration.rb', line 25

def timeout
  @timeout
end

Returns default link tracking setting (default: “None”) Valid values: “None”, “HtmlAndText”, “HtmlOnly”, “TextOnly”.

Returns:

  • (String)

    default link tracking setting (default: “None”) Valid values: “None”, “HtmlAndText”, “HtmlOnly”, “TextOnly”



35
36
37
# File 'lib/postmark_client/configuration.rb', line 35

def track_links
  @track_links
end

#track_opensBoolean

Returns whether to track email opens by default (default: false).

Returns:

  • (Boolean)

    whether to track email opens by default (default: false)



31
32
33
# File 'lib/postmark_client/configuration.rb', line 31

def track_opens
  @track_opens
end