Sha256: a6cae7939627405ffc132c9876bb602b28ca7d33f3885928706ac88974d9fef0

Contents?: true

Size: 987 Bytes

Versions: 10

Compression:

Stored size: 987 Bytes

Contents

# frozen_string_literal: true

module Doorkeeper
  module OAuth
    class TokenRequest
      attr_accessor :pre_auth, :resource_owner

      def initialize(pre_auth, resource_owner)
        @pre_auth       = pre_auth
        @resource_owner = resource_owner
      end

      def authorize
        if pre_auth.authorizable?
          auth = Authorization::Token.new(pre_auth, resource_owner)
          auth.issue_token
          @response = CodeResponse.new pre_auth,
                                       auth,
                                       response_on_fragment: true
        else
          @response = error_response
        end
      end

      def deny
        pre_auth.error = :access_denied
        error_response
      end

      private

      def error_response
        ErrorResponse.from_request pre_auth,
                                   redirect_uri: pre_auth.redirect_uri,
                                   response_on_fragment: true
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
doorkeeper-5.1.2 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.0.3 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.1.1 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.2.0.rc2 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.2.0.rc1 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.1.0 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.1.0.rc2 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.1.0.rc1 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.0.2 lib/doorkeeper/oauth/token_request.rb
doorkeeper-5.0.1 lib/doorkeeper/oauth/token_request.rb