Class: Circuitdata::Profile
- Inherits:
-
Object
- Object
- Circuitdata::Profile
- Defined in:
- lib/circuitdata/profile.rb
Constant Summary collapse
- BASIC_PROFILE_STRUCTURE =
{ open_trade_transfer_package: { version: SCHEMA_VERSION, profiles: { default: {circuitdata: {version: SCHEMA_VERSION}}, restricted: {circuitdata: {version: SCHEMA_VERSION}}, enforced: {circuitdata: {version: SCHEMA_VERSION}}, }, }, }
Class Method Summary collapse
Instance Method Summary collapse
- #data ⇒ Object
-
#initialize(data:) ⇒ Profile
constructor
A new instance of Profile.
- #profile_data ⇒ Object
- #question_answer(path) ⇒ Object
- #set_question_answer(path, value) ⇒ Object
Constructor Details
#initialize(data:) ⇒ Profile
Returns a new instance of Profile.
17 18 19 |
# File 'lib/circuitdata/profile.rb', line 17 def initialize(data:) @data = data end |
Class Method Details
.questions ⇒ Object
13 14 15 |
# File 'lib/circuitdata/profile.rb', line 13 def self.questions Schema.profile_questions end |
Instance Method Details
#data ⇒ Object
21 22 23 |
# File 'lib/circuitdata/profile.rb', line 21 def data @data ||= setup_basic_data end |
#profile_data ⇒ Object
25 26 27 |
# File 'lib/circuitdata/profile.rb', line 25 def profile_data data.dig(:open_trade_transfer_package, :profiles) end |
#question_answer(path) ⇒ Object
29 30 31 32 |
# File 'lib/circuitdata/profile.rb', line 29 def question_answer(path) path = path.map { |p| p.is_a?(String) ? p.to_sym : p } profile_data.dig(*path) end |