Class: Happi::File

Inherits:
Object
  • Object
show all
Defined in:
lib/happi/file.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(file) ⇒ File

Returns a new instance of File.



7
8
9
10
11
12
13
14
15
# File 'lib/happi/file.rb', line 7

def initialize(file)
  if file.is_a?(String)
    @mime_type = MIME::Types.type_for(file).first.content_type
    @file_name = file
  else
    @mime_type = file.content_type
    @file_name = file.path
  end
end

Instance Attribute Details

#file_nameObject

Returns the value of attribute file_name.



4
5
6
# File 'lib/happi/file.rb', line 4

def file_name
  @file_name
end

#mime_typeObject

Returns the value of attribute mime_type.



5
6
7
# File 'lib/happi/file.rb', line 5

def mime_type
  @mime_type
end

Instance Method Details

#encode_fileObject



25
26
27
# File 'lib/happi/file.rb', line 25

def encode_file
  Base64.encode64(File.read(file_name))
end

#exists?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/happi/file.rb', line 17

def exists?
  File.exists?(file_name)
end

#multipartObject



21
22
23
# File 'lib/happi/file.rb', line 21

def multipart
  Faraday::UploadIO.new(file_name, mime_type) if exists?
end