module Cranium::Archiver

Public Class Methods

archive(*files) click to toggle source
# File lib/cranium/archiver.rb, line 5
def archive(*files)
  create_directory(Cranium.configuration.archive_directory)
  archive_datetime = Time.now.strftime("%Y-%m-%d_%Hh%Mm%Ss")
  move_files_from_upload_directory(files, Cranium.configuration.archive_directory, prefix: "#{archive_datetime}_")
end
move(*files, target_directory:) click to toggle source
# File lib/cranium/archiver.rb, line 17
def move(*files, target_directory:)
  create_directory(target_directory)
  move_files_from_upload_directory(files, target_directory)
end
remove(*files) click to toggle source
# File lib/cranium/archiver.rb, line 11
def remove(*files)
  files.each do |file_name|
    FileUtils.rm File.join(Cranium.configuration.upload_path, file_name)
  end
end

Private Class Methods

create_directory(path) click to toggle source
# File lib/cranium/archiver.rb, line 24
def create_directory(path)
  FileUtils.mkdir_p(path)
end
move_files_from_upload_directory(files, target_directory, prefix: "") click to toggle source
# File lib/cranium/archiver.rb, line 28
def move_files_from_upload_directory(files, target_directory, prefix: "")
  files.each do |file_name|
    FileUtils.mv(
      File.join(Cranium.configuration.upload_path, file_name),
      File.join(target_directory, "#{prefix}#{file_name}")
    )
  end
end