Class: CancerRegistryReportingTestKit::HdeaGenerator::GroupGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(group_metadata, base_output_dir) ⇒ GroupGenerator

Returns a new instance of GroupGenerator.



19
20
21
22
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 19

def initialize(, base_output_dir)
  self. = 
  self.base_output_dir = base_output_dir
end

Instance Attribute Details

#base_output_dirObject

Returns the value of attribute base_output_dir.



17
18
19
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 17

def base_output_dir
  @base_output_dir
end

#group_metadataObject

Returns the value of attribute group_metadata.



17
18
19
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 17

def 
  @group_metadata
end

Class Method Details

.generate(ig_metadata, base_output_dir) ⇒ Object



10
11
12
13
14
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 10

def generate(, base_output_dir)
  .ordered_groups
    .reject { |group| SpecialCases::IGNORE_FOR_GENERATION.include?(group.profile_url) }
    .each { |group| new(group, base_output_dir).generate }
end

Instance Method Details

#base_metadata_file_nameObject



24
25
26
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 24

def 
  'metadata.yml'
end

#generateObject



40
41
42
43
44
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 40

def generate
  FileUtils.mkdir_p(File.join(base_output_dir, profile_identifier))
  .id = group_id
  File.write(, YAML.dump(.to_hash))
end

#group_idObject



36
37
38
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 36

def group_id
  "ccrr_#{.reformatted_version}_#{profile_identifier}"
end

#metadata_file_nameObject



28
29
30
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 28

def 
  File.join(base_output_dir, profile_identifier, )
end

#profile_identifierObject



32
33
34
# File 'lib/cancer_registry_reporting_test_kit/hdea_generator/group_generator.rb', line 32

def profile_identifier
  Naming.snake_case_for_profile()
end