Class: AuthpdsNyu::Sun::Opensso

Inherits:
Object
  • Object
show all
Defined in:
lib/authpds-nyu/sun/opensso.rb

Instance Method Summary collapse

Constructor Details

#initialize(controller, opensso_url) ⇒ Opensso

Returns a new instance of Opensso.

Raises:

  • (ArgumentError)


6
7
8
9
10
11
12
13
14
# File 'lib/authpds-nyu/sun/opensso.rb', line 6

def initialize(controller, opensso_url)
  raise ArgumentError.new("Argument Error in #{self.class}. :opensso_url not specified.") if opensso_url.nil?;
  @cookies = controller.cookies
  @opensso_uri = URI.parse(opensso_url)
  opensso_uri_split = URI.split(opensso_url)
  # @scheme= opensso_uri_split[0]
  @host= opensso_uri_split[2]
  @port= opensso_uri_split[3]
end

Instance Method Details

#is_valid?Boolean

Returns:

  • (Boolean)


16
17
18
19
20
21
22
23
24
25
# File 'lib/authpds-nyu/sun/opensso.rb', line 16

def is_valid?
  @http = Net::HTTP.new(@host, @port)
  # Set read timeout to 15 seconds.
  @http.read_timeout = 15
  @http.use_ssl = true if @opensso_uri.is_a?(URI::HTTPS)
  # Suppress "peer certificate" warning
  @http.verify_mode = OpenSSL::SSL::VERIFY_NONE if @http.use_ssl?
  return validate_token(get_token_cookie(get_cookie_name_for_token))
  # validate_token(token_cookie) ? get_opensso_user(token_cookie) : nil
end