Sha256: 358ad42fc174fff3dceb3441fb8d474fea2768b3512ca76339fe5b0f21604122
Contents?: true
Size: 1.5 KB
Versions: 1
Compression:
Stored size: 1.5 KB
Contents
module CabbageDoc class Authentication class << self def new(request = nil) super().tap do |auth| yield(auth) if block_given? Configuration.instance.authentication.call(auth, request) end end end attr_accessor :type, :username, :password, :token, :domain, :subdomain, :subdomains, :scheme, :path, :user_agent, :configurable, :verbose, :visibility def initialize Configuration.instance.tap do |config| @domain = config.domain @scheme = config.scheme @path = config.path @user_agent = config.title @verbose = config.verbose @visibility = config.visibility.dup end @subdomains = [] @configurable = [] @type = :basic end def visibility=(value) @visibility = Array(value) end def uri if path && path != '/' "#{root_uri}/#{path}" else root_uri end end def valid? case type when :basic username && password else !token.nil? end end def configurable? @configurable.any? end private def root_uri if subdomain "#{scheme}://#{subdomain}.#{domain}" else "#{scheme}://#{domain}" end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cabbage_doc-0.0.7 | lib/cabbage_doc/authentication.rb |