Class: Redox::Models::Media

Inherits:
AbstractModel show all
Defined in:
lib/redox/models/media.rb

Constant Summary collapse

BLOB_REQUIRED_SIZE =
200 * 1024

Constants inherited from AbstractModel

AbstractModel::HIGH_LEVEL_KEYS

Instance Method Summary collapse

Methods inherited from AbstractModel

add_helpers, from_response, from_response_inflected, get_inflected_class, #insurances, #to_json

Instance Method Details

#add_filepath(path) ⇒ Object



43
44
45
46
47
48
49
# File 'lib/redox/models/media.rb', line 43

def add_filepath(path)
  raise 'Not implemented' if File.size(path) > BLOB_REQUIRED_SIZE

  self.file_contents = Base64.encode64(File.read(path))
  self.file_type     = File.extname(path).to_s.delete_prefix('.').upcase
  self.file_name     = File.basename(path, '.*')
end

#availability=(value) ⇒ Object



32
33
34
35
36
37
38
39
40
41
# File 'lib/redox/models/media.rb', line 32

def availability=(value)
  self[:Availability] = case value
                        when true
                          'Available'
                        when false
                          'Unavailable'
                        else
                          value
                        end
end