Sha256: c98735df64db2c787be8dc95e50ea4ebf910714911563e36f3f799f9196db5ff
Contents?: true
Size: 1.48 KB
Versions: 10
Compression:
Stored size: 1.48 KB
Contents
module USCoreTestKit class Generator class IGResources def add(resource) resources_by_type[resource.resourceType] << resource end def capability_statement(mode = 'server') resources_by_type['CapabilityStatement'].find do |capability_statement_resource| capability_statement_resource.rest.any? { |r| r.mode == mode } end end def ig resources_by_type['ImplementationGuide'].first end def inspect 'IGResources' end def profile_by_url(url) resources_by_type['StructureDefinition'].find { |profile| profile.url == url } end def resource_for_profile(url) resources_by_type['StructureDefinition'].find { |profile| profile.url == url }.type end def value_set_by_url(url) resources_by_type['ValueSet'].find { |profile| profile.url == url } end def code_system_by_url(url) resources_by_type['CodeSystem'].find { |system| system.url == url } end def search_param_by_resource_and_name(resource, name) # remove '_' from search parameter name, such as _id or _tag normalized_name = normalized_name = name.to_s.delete_prefix('_') resources_by_type['SearchParameter'] .find { |param| param.id == "us-core-#{resource.downcase}-#{normalized_name}" } end private def resources_by_type @resources_by_type ||= Hash.new { |hash, key| hash[key] = [] } end end end end
Version data entries
10 entries across 10 versions & 1 rubygems