Class: DaVinciPASTestKit::Generator::IGMetadata
- Inherits:
-
Object
- Object
- DaVinciPASTestKit::Generator::IGMetadata
- Defined in:
- lib/davinci_pas_test_kit/generator/ig_metadata.rb
Instance Attribute Summary collapse
-
#groups ⇒ Object
Returns the value of attribute groups.
-
#ig_version ⇒ Object
Returns the value of attribute ig_version.
-
#use_case_groups ⇒ Object
Returns the value of attribute use_case_groups.
Instance Method Summary collapse
- #add_use_case_groups(id, file_name) ⇒ Object
- #bundle_groups ⇒ Object
- #claim_groups ⇒ Object
- #delayed_groups ⇒ Object
- #delayed_profiles ⇒ Object
- #non_delayed_groups ⇒ Object
- #ordered_groups ⇒ Object
- #patient_group ⇒ Object
- #postprocess_groups(ig_resources) ⇒ Object
- #reformatted_version ⇒ Object
- #to_hash ⇒ Object
Instance Attribute Details
#groups ⇒ Object
Returns the value of attribute groups.
4 5 6 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 4 def groups @groups end |
#ig_version ⇒ Object
Returns the value of attribute ig_version.
4 5 6 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 4 def ig_version @ig_version end |
#use_case_groups ⇒ Object
Returns the value of attribute use_case_groups.
4 5 6 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 4 def use_case_groups @use_case_groups end |
Instance Method Details
#add_use_case_groups(id, file_name) ⇒ Object
35 36 37 38 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 35 def add_use_case_groups(id, file_name) @use_case_groups ||= [] @use_case_groups << { id:, file_name: } end |
#bundle_groups ⇒ Object
40 41 42 43 44 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 40 def bundle_groups @bundle_groups ||= groups.select { |group| group.resource == 'Bundle' } .reject { |group| group.profile_name.include?('Base') } end |
#claim_groups ⇒ Object
46 47 48 49 50 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 46 def claim_groups @claim_groups ||= groups.select { |group| group.resource == 'Claim' } .reject { |group| group.profile_name.include?('Base') } end |
#delayed_groups ⇒ Object
20 21 22 23 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 20 def delayed_groups @delayed_groups ||= groups.select(&:delayed?) end |
#delayed_profiles ⇒ Object
30 31 32 33 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 30 def delayed_profiles @delayed_profiles ||= delayed_groups.map(&:profile_url) end |
#non_delayed_groups ⇒ Object
25 26 27 28 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 25 def non_delayed_groups @non_delayed_groups ||= groups.reject(&:delayed?) - [patient_group] end |
#ordered_groups ⇒ Object
10 11 12 13 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 10 def ordered_groups @ordered_groups ||= [patient_group] + non_delayed_groups + delayed_groups end |
#patient_group ⇒ Object
15 16 17 18 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 15 def patient_group @patient_group ||= groups.find { |group| group.resource == 'Patient' } end |
#postprocess_groups(ig_resources) ⇒ Object
52 53 54 55 56 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 52 def postprocess_groups(ig_resources) groups.each do |group| group.add_delayed_references(delayed_profiles, ig_resources) end end |
#reformatted_version ⇒ Object
6 7 8 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 6 def reformatted_version @reformatted_version ||= ig_version.delete('.-') end |
#to_hash ⇒ Object
58 59 60 61 62 63 |
# File 'lib/davinci_pas_test_kit/generator/ig_metadata.rb', line 58 def to_hash { ig_version:, groups: groups.map(&:to_hash) } end |