Sha256: 5b3d1b792cb93cfd4dc8e205ac0053baa4015474ee7ce813d5662e4da6616e35
Contents?: true
Size: 1.11 KB
Versions: 2
Compression:
Stored size: 1.11 KB
Contents
module Doorkeeper module Request class << self def authorization_strategy(response_type) get_strategy(response_type, authorization_response_types) rescue NameError raise Errors::InvalidAuthorizationStrategy end def token_strategy(grant_type) get_strategy(grant_type, token_grant_types) rescue NameError raise Errors::InvalidTokenStrategy end def get_strategy(grant_or_request_type, available) raise Errors::MissingRequestStrategy if grant_or_request_type.blank? raise NameError unless available.include?(grant_or_request_type.to_s) build_strategy_class(grant_or_request_type) end private def authorization_response_types Doorkeeper.configuration.authorization_response_types end def token_grant_types Doorkeeper.configuration.token_grant_types end def build_strategy_class(grant_or_request_type) strategy_class_name = grant_or_request_type.to_s.tr(' ', '_').camelize "Doorkeeper::Request::#{strategy_class_name}".constantize end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
doorkeeper-5.0.0 | lib/doorkeeper/request.rb |
doorkeeper-5.0.0.rc2 | lib/doorkeeper/request.rb |