Sha256: ae0bc6db9d4cca6faf2460bda10207f5bf2ede520f6f2fb42e758c6976ae2bc7

Contents?: true

Size: 902 Bytes

Versions: 15

Compression:

Stored size: 902 Bytes

Contents

require 'doorkeeper/oauth/client_credentials/validation'

module Doorkeeper
  module OAuth
    class ClientCredentialsRequest
      class Issuer
        attr_accessor :token, :validation, :error

        def initialize(server, validation)
          @server, @validation = server, validation
        end

        def create(client, scopes, creator = Creator.new)
          if validation.valid?
            @token = create_token(client, scopes, creator)
            @error = :server_error unless @token
          else
            @token = false
            @error = validation.error
          end
          @token
        end

        private

        def create_token(client, scopes, creator)
          creator.call(
            client,
            scopes,
            use_refresh_token: false,
            expires_in: @server.access_token_expires_in
          )
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
doorkeeper-1.4.2 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.1.3 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.1.2 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.1.1 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.1.0 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.0.1 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-1.4.1 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.0.0 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.0.0.rc3 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.0.0.rc2 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-2.0.0.alpha1 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-1.4.0 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-1.3.1 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-1.3.0 lib/doorkeeper/oauth/client_credentials/issuer.rb
doorkeeper-1.2.0 lib/doorkeeper/oauth/client_credentials/issuer.rb