class S3MediaServerApi::AwsFile
Public Class Methods
complete_upload(uuid)
click to toggle source
completes multipart upload parameters: uuid - file uuid
# File lib/s3_media_server_api/aws_file.rb, line 92 def complete_upload(uuid) response = AsynkRequest.sync_request(base_path, :complete_upload, uuid: uuid) raise CompleteUploadError.message_from_asynk_response(response) unless response.success? AwsFile.new(response) end
create_from_path(file_path)
click to toggle source
creates file on s3_media_server parameters: file_path - path on file system to file
returns: response with created file
# File lib/s3_media_server_api/aws_file.rb, line 58 def create_from_path(file_path) params = { size: File.size(file_path), mime_type: file_mime_type(file_path), name: File.basename(file_path) } response = AsynkRequest.sync_request(base_path, :create, params) raise FileCreationError.message_from_asynk_response(response) unless response.success? AwsFile.new(response) end
file_exists(uuid)
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 98 def file_exists(uuid) AsynkRequest.async_request(base_path, :file_exists, uuid: uuid) end
get_signed_upload_url(uuid, part_number)
click to toggle source
fetches signed upload url to upload specified part number parameters: uuid - file uuid
part_numer - part number that will be uploaded
returns: signed upload url
# File lib/s3_media_server_api/aws_file.rb, line 84 def get_signed_upload_url(uuid, part_number) response = AsynkRequest.sync_request(:uploads, :show, aws_file_uuid: uuid, uuid: part_number) response[:data][:upload_url] end
new(response)
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 4 def initialize(response) @params = response[:data] end
resolve(uuid)
click to toggle source
fetches media file parameters: uuid - uuid of file
returns: response with file information
# File lib/s3_media_server_api/aws_file.rb, line 74 def resolve(uuid) AsynkRequest.sync_request(base_path, :resolve, uuid: uuid) end
Private Class Methods
base_path()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 109 def base_path 'aws_file' end
file_mime_type(file_source_path)
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 104 def file_mime_type(file_source_path) mime_magic = MimeMagic.by_magic(File.open(file_source_path)) mime_magic ? mime_magic.type : 'application/octet-stream' end
Public Instance Methods
as_hash()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 40 def as_hash @params end
default_part_size()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 24 def default_part_size @params[:default_part_size] end
exists?()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 44 def exists? !@params.empty? end
mime_type()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 16 def mime_type @params[:mime_type] end
name()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 36 def name @params[:name] end
public_url()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 32 def public_url @params[:public_url] end
size()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 12 def size @params[:size] end
state()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 28 def state @params[:state] end
uploads_count()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 20 def uploads_count @params[:uploads_count] end
uuid()
click to toggle source
# File lib/s3_media_server_api/aws_file.rb, line 8 def uuid @params[:uuid] end