Class: Csvtool::Interface::CLI::Workflows::Builders::CsvSplitSessionBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/csvtool/interface/cli/workflows/builders/csv_split_session_builder.rb

Instance Method Summary collapse

Instance Method Details

#call(file_path:, col_sep:, headers_present:, chunk_size:, output_directory: nil, file_prefix: nil, overwrite_existing: false, write_manifest: false, manifest_path: nil) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/csvtool/interface/cli/workflows/builders/csv_split_session_builder.rb', line 13

def call(
  file_path:,
  col_sep:,
  headers_present:,
  chunk_size:,
  output_directory: nil,
  file_prefix: nil,
  overwrite_existing: false,
  write_manifest: false,
  manifest_path: nil
)
  source = Domain::CsvSplitSession::SplitSource.new(
    path: file_path,
    separator: col_sep,
    headers_present: headers_present
  )
  options = Domain::CsvSplitSession::SplitOptions.new(
    chunk_size: chunk_size,
    output_directory: output_directory,
    file_prefix: file_prefix,
    overwrite_existing: overwrite_existing,
    write_manifest: write_manifest,
    manifest_path: manifest_path
  )
  Domain::CsvSplitSession::SplitSession.start(source: source, options: options)
end