Class: Cabriolet::CAB::FileCompressionWork

Inherits:
Fractor::Work
  • Object
show all
Defined in:
lib/cabriolet/cab/file_compression_work.rb

Overview

Work item for compressing a single file in a CAB archive

Instance Method Summary collapse

Constructor Details

#initialize(source_path:, compression_method:, block_size:, io_system:, algorithm_factory:) ⇒ FileCompressionWork

Initialize work item for file compression

Parameters:

  • source_path (String)

    Path to source file

  • compression_method (Symbol)

    Compression method to use

  • block_size (Integer)

    Maximum block size

  • io_system (System::IOSystem)

    I/O system

  • algorithm_factory (AlgorithmFactory)

    Algorithm factory



16
17
18
19
20
21
22
23
24
25
# File 'lib/cabriolet/cab/file_compression_work.rb', line 16

def initialize(source_path:, compression_method:, block_size:,
io_system:, algorithm_factory:)
  super({
    source_path: source_path,
    compression_method: compression_method,
    block_size: block_size,
    io_system: io_system,
    algorithm_factory: algorithm_factory,
  })
end

Instance Method Details

#algorithm_factoryObject



43
44
45
# File 'lib/cabriolet/cab/file_compression_work.rb', line 43

def algorithm_factory
  input[:algorithm_factory]
end

#block_sizeObject



35
36
37
# File 'lib/cabriolet/cab/file_compression_work.rb', line 35

def block_size
  input[:block_size]
end

#compression_methodObject



31
32
33
# File 'lib/cabriolet/cab/file_compression_work.rb', line 31

def compression_method
  input[:compression_method]
end

#idObject



47
48
49
# File 'lib/cabriolet/cab/file_compression_work.rb', line 47

def id
  source_path
end

#io_systemObject



39
40
41
# File 'lib/cabriolet/cab/file_compression_work.rb', line 39

def io_system
  input[:io_system]
end

#source_pathObject



27
28
29
# File 'lib/cabriolet/cab/file_compression_work.rb', line 27

def source_path
  input[:source_path]
end