Class: PkceOauth::Challenge

Inherits:
Object
  • Object
show all
Defined in:
lib/pkce_oauth/challenge.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(verifier: CodeVerifier, challenger: CodeChallenger, **options) ⇒ Challenge

Returns a new instance of Challenge.



7
8
9
10
# File 'lib/pkce_oauth/challenge.rb', line 7

def initialize(verifier: CodeVerifier, challenger: CodeChallenger, **options)
  @verifier = verifier.new(**options.slice(:key_length))
  @challenger = challenger.new
end

Instance Attribute Details

#challengerObject (readonly)

Returns the value of attribute challenger.



5
6
7
# File 'lib/pkce_oauth/challenge.rb', line 5

def challenger
  @challenger
end

#verifierObject (readonly)

Returns the value of attribute verifier.



5
6
7
# File 'lib/pkce_oauth/challenge.rb', line 5

def verifier
  @verifier
end

Instance Method Details

#callObject



12
13
14
15
16
17
18
19
# File 'lib/pkce_oauth/challenge.rb', line 12

def call
  code_verifier = verifier.call

  {
    code_verifier: code_verifier,
    code_challenge: challenger.call(code_verifier: code_verifier)
  }
end