Class: RackCAS::Server

Inherits:
Object
  • Object
show all
Defined in:
lib/rack-cas/server.rb

Instance Method Summary collapse

Constructor Details

#initialize(url) ⇒ Server



6
7
8
# File 'lib/rack-cas/server.rb', line 6

def initialize(url)
  @url = RackCAS::URL.parse(url)
end

Instance Method Details

#login_url(service_url, params = {}) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/rack-cas/server.rb', line 10

def (service_url, params = {})
  service_url = URL.parse(service_url).to_s
  base_params = {service: service_url}
  base_params[:renew] = true if RackCAS.config.renew?

  @url.dup.append_path('login').add_params(base_params.merge(params))
end

#logout_url(params = {}) ⇒ Object



18
19
20
21
22
23
# File 'lib/rack-cas/server.rb', line 18

def logout_url(params = {})
  @url.dup.tap do |url|
    url.append_path('logout')
    url.add_params(params) unless params.empty?
  end
end

#validate_service(service_url, ticket) ⇒ Object



25
26
27
28
# File 'lib/rack-cas/server.rb', line 25

def validate_service(service_url, ticket)
  response = ServiceValidationResponse.new validate_service_url(service_url, ticket)
  [response.user, response.extra_attributes]
end