class FastlyNsq::TlsOptions
Public Class Methods
as_hash(context = nil)
click to toggle source
Return hash of TLS options for creating an NSQ connection. @param context [Hash]
# File lib/fastly_nsq/tls_options.rb, line 8 def self.as_hash(context = nil) new(context).to_h end
new(context = nil)
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 12 def initialize(context = nil) @context = context || {} end
Public Instance Methods
to_h()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 16 def to_h merge_contexts if @context.empty? {} else { tls_v1: true, tls_options: @context, } end end
Private Instance Methods
env_ca_certificate()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 38 def env_ca_certificate ENV.fetch('NSQ_SSL_CA_CERTIFICATE', nil) end
env_certificate()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 34 def env_certificate ENV.fetch('NSQ_SSL_CERTIFICATE', nil) end
env_default_hash()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 46 def env_default_hash { key: env_key, certificate: env_certificate, ca_certificate: env_ca_certificate, verify_mode: verify_mode, } end
env_key()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 30 def env_key ENV.fetch('NSQ_SSL_KEY', nil) end
merge_contexts()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 55 def merge_contexts @context = env_default_hash.merge(@context).delete_if { |_, v| v.nil? } end
verify_mode()
click to toggle source
# File lib/fastly_nsq/tls_options.rb, line 42 def verify_mode ENV.fetch('NSQ_SSL_VERIFY_MODE', nil) end