Class: Pdfh::Settings

Inherits:
Object
  • Object
show all
Defined in:
lib/pdfh/models/settings.rb

Overview

Handles the config yaml data mapping, and associates a file name with a doc type

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config_data) ⇒ self

Parameters:

  • config_data (Hash)


16
17
18
19
20
21
22
23
24
25
26
# File 'lib/pdfh/models/settings.rb', line 16

def initialize(config_data)
  process_lookup_dirs(config_data[:lookup_dirs])
  process_destination_base(config_data[:destination_base_path])

  Pdfh.debug "Configured Look up directories:"
  lookup_dirs.each.with_index(1) { |dir, idx| Pdfh.debug "  #{idx}. #{dir}" }
  Pdfh.debug

  build_doc_types(config_data[:document_types])
  build_zip_types(config_data[:zip_types]) if config_data.key?(:zip_types)
end

Instance Attribute Details

#base_pathString (readonly)

Returns The base directory path for storing processed files.

Returns:

  • (String)

    The base directory path for storing processed files.



12
# File 'lib/pdfh/models/settings.rb', line 12

attr_reader :lookup_dirs, :base_path, :zip_types

#lookup_dirsArray<String> (readonly)

Returns List of directories to look up for processing.

Returns:

  • (Array<String>)

    List of directories to look up for processing.



12
13
14
# File 'lib/pdfh/models/settings.rb', line 12

def lookup_dirs
  @lookup_dirs
end

#zip_typesObject (readonly)

Returns the value of attribute zip_types.



12
# File 'lib/pdfh/models/settings.rb', line 12

attr_reader :lookup_dirs, :base_path, :zip_types

Instance Method Details

#document_type(id) ⇒ DocumentType

Returns:



34
35
36
# File 'lib/pdfh/models/settings.rb', line 34

def document_type(id)
  @document_types[id]
end

#document_typesArray<DocumentType>

Returns:



29
30
31
# File 'lib/pdfh/models/settings.rb', line 29

def document_types
  @document_types.values
end

#zip_types?Boolean

Returns:

  • (Boolean)


39
40
41
# File 'lib/pdfh/models/settings.rb', line 39

def zip_types?
  !!zip_types&.any?
end