class Ddr::Auth::WebAuthContext

Public Instance Methods

affiliation() click to toggle source

@return [Array<String>]

Calls superclass method Ddr::Auth::AuthContext#affiliation
# File lib/ddr/auth/web_auth_context.rb, line 13
def affiliation
  anonymous? ? super : split_env("affiliation").map { |a| a.sub(/@duke\.edu\z/, "") }
end
ip_address() click to toggle source

@return [String] the IP address, or nil @see ActionDispatch::RemoteIp

# File lib/ddr/auth/web_auth_context.rb, line 6
def ip_address
  if middleware = env["action_dispatch.remote_ip"]
    middleware.calculate_ip
  end
end
ismemberof() click to toggle source

@return [Array<String>]

Calls superclass method Ddr::Auth::AuthContext#ismemberof
# File lib/ddr/auth/web_auth_context.rb, line 18
def ismemberof
  anonymous? ? super : split_env("ismemberof")
end

Private Instance Methods

split_env(attr, delim = ";") click to toggle source
# File lib/ddr/auth/web_auth_context.rb, line 24
def split_env(attr, delim = ";")
  env.fetch(attr, "").split(delim)
end