Module: PacioInfernoCore::Generator::Naming
- Defined in:
- lib/pacio_inferno_core/generator/naming.rb
Constant Summary collapse
- IG_LINKS =
{}.freeze
Class Method Summary collapse
- .ig_link(version) ⇒ Object
- .implementation_guide_id ⇒ Object
- .long_name ⇒ Object
- .module_name ⇒ Object
- .prefix ⇒ Object
- .resource_has_multiple_profiles?(resource) ⇒ Boolean
- .resources_with_multiple_profiles ⇒ Object
- .snake_case_for_profile(group_metadata) ⇒ Object
- .upper_camel_case_for_profile(group_metadata) ⇒ Object
Class Method Details
.ig_link(version) ⇒ Object
44 45 46 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 44 def ig_link(version) IG_LINKS[version] end |
.implementation_guide_id ⇒ Object
16 17 18 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 16 def implementation_guide_id # Example: 'hl7.fhir.us.pacio-pfe' end |
.long_name ⇒ Object
24 25 26 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 24 def long_name # Example: 'US Core Server' end |
.module_name ⇒ Object
20 21 22 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 20 def module_name # Example: 'USCore', 'PacioSMP' end |
.prefix ⇒ Object
11 12 13 14 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 11 def prefix # Example: 'us_core', 'smp' # raise NotImplementedError, "#{self.class} must implement #naming_prefix" end |
.resource_has_multiple_profiles?(resource) ⇒ Boolean
28 29 30 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 28 def resource_has_multiple_profiles?(resource) resources_with_multiple_profiles.include? resource end |
.resources_with_multiple_profiles ⇒ Object
7 8 9 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 7 def resources_with_multiple_profiles [] end |
.snake_case_for_profile(group_metadata) ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 32 def snake_case_for_profile() resource = .resource return resource.underscore unless resource_has_multiple_profiles?(resource) .name .delete_prefix("#{prefix.downcase}_").underscore end |
.upper_camel_case_for_profile(group_metadata) ⇒ Object
40 41 42 |
# File 'lib/pacio_inferno_core/generator/naming.rb', line 40 def upper_camel_case_for_profile() snake_case_for_profile().camelize end |