Class: TokyoMetro::Factory::Save::Api::MetaClass::Group::List

Inherits:
Array
  • Object
show all
Defined in:
lib/tokyo_metro/factory/save/api/meta_class/group/list.rb

Overview

グループ化されたデータの配列

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.factory_for_saving_to_each_fileObject

保存の際に使用する Factory Pattern クラス



34
35
36
# File 'lib/tokyo_metro/factory/save/api/meta_class/group/list.rb', line 34

def self.factory_for_saving_to_each_file
  raise "Error: The class method \'#{__method__}\' is not defined yet in this class \'#{ self.name }\'."
end

Instance Method Details

#save_datas(db_dir, file_type, instance_is_generated = false) ⇒ nil

Note:

db_dir を定義しない場合は、このモジュールが組み込まれたクラスのクラスメソッド db_dirname を呼び出す。 また、クラスを表す定数が指定された場合は、指定されたクラスのクラスメソッド db_dirname が呼び出される。

配列内の各データを保存するメソッド

Parameters:

  • db_dir (String (dirname) or Const (Class))

    「データベースのディレクトリを示す文字列」または「クラスを表す定数」

  • file_type (Symbol or nil)

    保存するファイルの種類

Returns:

  • (nil)


11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/tokyo_metro/factory/save/api/meta_class/group/list.rb', line 11

def save_datas( db_dir , file_type , instance_is_generated = false )
  unless self.empty?
    puts "#{self.length} files will be generated."
    save_datas__check_varidity

    factory = self.class.factory_for_saving_to_each_file

    _digit_of_length = digit_of_length
    print_header( _digit_of_length )
    self.each.with_index(1) do | fileinfo , i |
      factory.process( fileinfo.list , fileinfo.filename , db_dir , nil , file_type )
      print_inspect_info( i , _digit_of_length )
    end
  else
    puts "○ No file will be generated."
  end

  puts "\n" * 2

  return nil
end