Class: UniProp::VersionMetaDataRecreator

Inherits:
Object
  • Object
show all
Defined in:
lib/uniprop/metadata_generator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(using_version, generated_version) ⇒ VersionMetaDataRecreator

using_versionのメタデータを使用してgenerated_versionのメタデータを作成するためのオブジェクトを生成

Parameters:



113
114
115
116
117
# File 'lib/uniprop/metadata_generator.rb', line 113

def initialize(using_version, generated_version)
  @using_version = using_version
  @using_version_metadata = using_version.
  @generated_version = generated_version
end

Instance Attribute Details

#generated_versionObject (readonly)

Returns the value of attribute generated_version.



109
110
111
# File 'lib/uniprop/metadata_generator.rb', line 109

def generated_version
  @generated_version
end

#using_versionObject (readonly)

Returns the value of attribute using_version.



109
110
111
# File 'lib/uniprop/metadata_generator.rb', line 109

def using_version
  @using_version
end

#using_version_metadataObject (readonly)

Returns the value of attribute using_version_metadata.



109
110
111
# File 'lib/uniprop/metadata_generator.rb', line 109

def 
  @using_version_metadata
end

Instance Method Details

#generate_blocks(using_file) ⇒ Object

メタデータのblocks項を生成

Parameters:



139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
# File 'lib/uniprop/metadata_generator.rb', line 139

def generate_blocks(using_file)
  using_filename = using_file.basename_prefix
  generated_file = generated_version.find_file(using_filename)
   = .(using_file)

  block_generator = BlockGenerator.new(using_file, generated_file, )
  
  result_blocks = []

  block_generator.generate_raw_blocks.each do |raw_block|
    result_block = {}
    result_block["content"] = raw_block.content
    result_block["range"] = raw_block.range
    result_blocks << result_block
  end

  result_blocks
end

#generate_file_formatsArray<Hash<String,Object>>

メタデータのfile_formats項を生成

Returns:

  • (Array<Hash<String,Object>>)


121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
# File 'lib/uniprop/metadata_generator.rb', line 121

def generate_file_formats
  return @file_formats if @file_formats
  @file_formats = []

  using_version.files.each_with_index do |file, i|
    puts "recreating metadata for #{file.basename_prefix} (#{i+1}/#{using_version.files.size})"

    next if !.has_propfile_metadata?(file)
    next if !generated_version.has_file?(file.basename_prefix)

    @file_formats << { "file_name"=>file.basename_prefix, "blocks"=>generate_blocks(file) }
  end

  @file_formats
end