class Cranium::Extract::Storage

Constants

STORAGE_FILE_NAME

Public Class Methods

new(extract_name) click to toggle source
# File lib/cranium/extract/storage.rb, line 10
def initialize(extract_name)
  @extract_name = extract_name
end

Public Instance Methods

last_value_of(field) click to toggle source
# File lib/cranium/extract/storage.rb, line 16
def last_value_of(field)
  stored_values[:last_values][field]
end
save_last_value_of(field, value) click to toggle source
# File lib/cranium/extract/storage.rb, line 22
def save_last_value_of(field, value)
  stored_values[:last_values][field] = value
  save_stored_values
end

Private Instance Methods

save_stored_values() click to toggle source
# File lib/cranium/extract/storage.rb, line 52
def save_stored_values
  FileUtils.mkdir_p storage_dir unless Dir.exists? storage_dir
  File.write storage_file, YAML.dump(@stored_values)
end
storage_dir() click to toggle source
# File lib/cranium/extract/storage.rb, line 46
def storage_dir
  Cranium.configuration.storage_directory
end
storage_file() click to toggle source
# File lib/cranium/extract/storage.rb, line 40
def storage_file
  File.join storage_dir, STORAGE_FILE_NAME
end
stored_values() click to toggle source
# File lib/cranium/extract/storage.rb, line 31
def stored_values
  return @stored_values[@extract_name] unless @stored_values.nil?
  @stored_values = (File.exists? storage_file) ? YAML.load(File.read storage_file) : {}
  @stored_values[@extract_name] = { last_values: {} } if @stored_values[@extract_name].nil?
  @stored_values[@extract_name]
end