class FileComposer::Documents::Base

Parent class for all documents.

Attributes

filename[R]

Public Class Methods

new(filename:) click to toggle source
# File lib/file_composer/documents/base.rb, line 21
def initialize(filename:)
  raise ArgumentError, 'filename is required' if filename.to_s.empty?

  @filename = filename.to_s
end

Private Instance Methods

extension() click to toggle source
# File lib/file_composer/documents/base.rb, line 35
def extension
  File.extname(filename)
end
make_temp_filename(temp_root) click to toggle source
# File lib/file_composer/documents/base.rb, line 29
def make_temp_filename(temp_root)
  temp_filename = "#{SecureRandom.uuid}#{extension}"

  temp_root.to_s.empty? ? temp_filename : File.join(temp_root, temp_filename)
end