class VoiceBase::Request::FilePart

Attributes

filepath[RW]

Public Class Methods

new(name:, file:) click to toggle source
# File lib/voicebase/request/file_part.rb, line 9
def initialize(name:, file:)
  @name = name
  @filepath = file.path
  @body = file.read
end

Public Instance Methods

multipart() click to toggle source
# File lib/voicebase/request/file_part.rb, line 15
def multipart
  "Content-Disposition: form-data; name=\"#{CGI::escape(name)}\"; filename=\"#{ File.basename(filepath) }\"\r\n" +
    "Content-Type: #{ mime_type.simplified }\r\n\r\n#{ body }\r\n\r\n"
end

Private Instance Methods

mime_type() click to toggle source
# File lib/voicebase/request/file_part.rb, line 22
def mime_type
  MIME::Types.type_for(filepath)[0] || MIME::Types["application/octet-stream"][0]
end