class Castle::Context::GetDefault
Public Class Methods
new(request, cookies = nil)
click to toggle source
# File lib/castle/context/get_default.rb, line 6 def initialize(request, cookies = nil) @pre_headers = Castle::Headers::Filter.new(request).call @cookies = cookies || request.cookies @request = request end
Public Instance Methods
call()
click to toggle source
# File lib/castle/context/get_default.rb, line 12 def call { client_id: client_id, active: true, headers: headers, ip: ip, library: { name: 'castle-rb', version: Castle::VERSION } }.tap do |result| result[:locale] = locale if locale result[:user_agent] = user_agent if user_agent end end
Private Instance Methods
client_id()
click to toggle source
@return [String]
# File lib/castle/context/get_default.rb, line 46 def client_id Castle::ClientId::Extract.new(@pre_headers, @cookies).call end
headers()
click to toggle source
formatted and filtered headers @return [Hash]
# File lib/castle/context/get_default.rb, line 52 def headers Castle::Headers::Extract.new(@pre_headers).call end
ip()
click to toggle source
@return [String]
# File lib/castle/context/get_default.rb, line 41 def ip Castle::IPs::Extract.new(@pre_headers).call end
locale()
click to toggle source
@return [String]
# File lib/castle/context/get_default.rb, line 31 def locale @pre_headers['Accept-Language'] end
user_agent()
click to toggle source
@return [String]
# File lib/castle/context/get_default.rb, line 36 def user_agent @pre_headers['User-Agent'] end