Class: HTTPI::Auth::Config
- Inherits:
-
Object
- Object
- HTTPI::Auth::Config
- Defined in:
- lib/httpi/auth/config.rb
Overview
HTTPI::Auth::Config
Manages HTTP and SSL auth configuration. Currently supports HTTP basic/digest and SSL client authentication.
Constant Summary collapse
- TYPES =
Supported authentication types.
[:basic, :digest, :ssl, :ntlm]
Instance Attribute Summary collapse
-
#type ⇒ Object
Accessor for the authentication type in use.
Instance Method Summary collapse
-
#basic(*args) ⇒ Object
Accessor for the HTTP basic auth credentials.
-
#basic? ⇒ Boolean
Returns whether to use HTTP basic auth.
-
#credentials ⇒ Object
Shortcut method for returning the credentials for the authentication specified.
-
#digest(*args) ⇒ Object
Accessor for the HTTP digest auth credentials.
-
#digest? ⇒ Boolean
Returns whether to use HTTP digest auth.
-
#http? ⇒ Boolean
Returns whether to use HTTP basic or dihest auth.
-
#ntlm(*args) ⇒ Object
Accessor for the NTLM auth credentials.
-
#ntlm? ⇒ Boolean
Returns whether to use NTLM auth.
-
#ssl ⇒ Object
Returns the
HTTPI::Auth::SSL
object. -
#ssl? ⇒ Boolean
Returns whether to use SSL client auth.
Instance Attribute Details
#type ⇒ Object
Accessor for the authentication type in use.
77 78 79 |
# File 'lib/httpi/auth/config.rb', line 77 def type @type end |
Instance Method Details
#basic(*args) ⇒ Object
Accessor for the HTTP basic auth credentials.
16 17 18 19 20 21 |
# File 'lib/httpi/auth/config.rb', line 16 def basic(*args) return @basic if args.empty? self.type = :basic @basic = args.flatten.compact end |
#basic? ⇒ Boolean
Returns whether to use HTTP basic auth.
24 25 26 |
# File 'lib/httpi/auth/config.rb', line 24 def basic? type == :basic end |
#credentials ⇒ Object
Shortcut method for returning the credentials for the authentication specified. Returns nil
unless any authentication credentials were specified.
71 72 73 74 |
# File 'lib/httpi/auth/config.rb', line 71 def credentials return unless type send type end |
#digest(*args) ⇒ Object
Accessor for the HTTP digest auth credentials.
29 30 31 32 33 34 |
# File 'lib/httpi/auth/config.rb', line 29 def digest(*args) return @digest if args.empty? self.type = :digest @digest = args.flatten.compact end |
#digest? ⇒ Boolean
Returns whether to use HTTP digest auth.
37 38 39 |
# File 'lib/httpi/auth/config.rb', line 37 def digest? type == :digest end |
#http? ⇒ Boolean
Returns whether to use HTTP basic or dihest auth.
42 43 44 |
# File 'lib/httpi/auth/config.rb', line 42 def http? type == :basic || type == :digest end |
#ntlm(*args) ⇒ Object
Accessor for the NTLM auth credentials.
47 48 49 50 51 52 |
# File 'lib/httpi/auth/config.rb', line 47 def ntlm(*args) return @ntlm if args.empty? self.type = :ntlm @ntlm = args.flatten.compact end |
#ntlm? ⇒ Boolean
Returns whether to use NTLM auth.
55 56 57 |
# File 'lib/httpi/auth/config.rb', line 55 def ntlm? type == :ntlm end |
#ssl ⇒ Object
Returns the HTTPI::Auth::SSL
object.
60 61 62 |
# File 'lib/httpi/auth/config.rb', line 60 def ssl @ssl ||= SSL.new end |
#ssl? ⇒ Boolean
Returns whether to use SSL client auth.
65 66 67 |
# File 'lib/httpi/auth/config.rb', line 65 def ssl? ssl.present? end |