Class: StandardId::Oauth::BaseRequestFlow
- Inherits:
-
Object
- Object
- StandardId::Oauth::BaseRequestFlow
- Defined in:
- lib/standard_id/oauth/base_request_flow.rb
Overview
Shared base for all OAuth flows to handle params DSL and request context Used by both token grant flows and authorization endpoint flows
Direct Known Subclasses
Instance Attribute Summary collapse
-
#current_account ⇒ Object
readonly
Returns the value of attribute current_account.
-
#params ⇒ Object
readonly
Returns the value of attribute params.
-
#request ⇒ Object
readonly
Returns the value of attribute request.
Class Method Summary collapse
- .expect_params(*keys) ⇒ Object
- .expected_params ⇒ Object
- .extra_permitted_keys ⇒ Object
- .permit_params(*keys) ⇒ Object
-
.permitted_params ⇒ Object
Subclasses can append additional keys by overriding extra_permitted_keys.
Instance Method Summary collapse
-
#initialize(params, request, current_account: nil) ⇒ BaseRequestFlow
constructor
A new instance of BaseRequestFlow.
Constructor Details
#initialize(params, request, current_account: nil) ⇒ BaseRequestFlow
Returns a new instance of BaseRequestFlow.
8 9 10 11 12 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 8 def initialize(params, request, current_account: nil) @params = params @request = request @current_account = current_account end |
Instance Attribute Details
#current_account ⇒ Object (readonly)
Returns the value of attribute current_account.
6 7 8 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 6 def current_account @current_account end |
#params ⇒ Object (readonly)
Returns the value of attribute params.
6 7 8 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 6 def params @params end |
#request ⇒ Object (readonly)
Returns the value of attribute request.
6 7 8 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 6 def request @request end |
Class Method Details
.expect_params(*keys) ⇒ Object
15 16 17 18 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 15 def expect_params(*keys) @expected_params ||= [] @expected_params |= keys.flatten.map! { |k| k.to_sym } end |
.expected_params ⇒ Object
25 26 27 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 25 def expected_params Array(@expected_params).dup end |
.extra_permitted_keys ⇒ Object
37 38 39 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 37 def extra_permitted_keys [] end |
.permit_params(*keys) ⇒ Object
20 21 22 23 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 20 def permit_params(*keys) @permitted_params ||= [] @permitted_params |= keys.flatten.map! { |k| k.to_sym } end |
.permitted_params ⇒ Object
Subclasses can append additional keys by overriding extra_permitted_keys
30 31 32 33 34 35 |
# File 'lib/standard_id/oauth/base_request_flow.rb', line 30 def permitted_params exp = expected_params perm = Array(@permitted_params) configured = (exp + perm + Array(extra_permitted_keys)).uniq configured end |