Class: OpenID::Consumer::DiscoveryManager
- Inherits:
-
Object
- Object
- OpenID::Consumer::DiscoveryManager
- Defined in:
- lib/openid/consumer/discovery_manager.rb
Overview
Manages calling discovery and tracking which endpoints have already been attempted.
Instance Method Summary collapse
- #cleanup(force = false) ⇒ Object
- #get_next_service ⇒ Object
-
#initialize(session, url, session_key_suffix = nil) ⇒ DiscoveryManager
constructor
A new instance of DiscoveryManager.
Constructor Details
#initialize(session, url, session_key_suffix = nil) ⇒ DiscoveryManager
Returns a new instance of DiscoveryManager.
63 64 65 66 67 68 |
# File 'lib/openid/consumer/discovery_manager.rb', line 63 def initialize(session, url, session_key_suffix=nil) @url = url @session = OpenID::Consumer::Session.new(session, DiscoveredServices) @session_key_suffix = session_key_suffix || 'auth' end |
Instance Method Details
#cleanup(force = false) ⇒ Object
92 93 94 95 96 97 98 99 100 101 |
# File 'lib/openid/consumer/discovery_manager.rb', line 92 def cleanup(force=false) manager = get_manager(force) if !manager.nil? service = manager.current destroy_manager(force) else service = nil end return service end |
#get_next_service ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/openid/consumer/discovery_manager.rb', line 70 def get_next_service manager = get_manager if !manager.nil? && manager.empty? destroy_manager manager = nil end if manager.nil? yadis_url, services = yield @url manager = create_manager(yadis_url, services) end if !manager.nil? service = manager.next store(manager) else service = nil end return service end |