Class: S3MediaServerApi::AwsFile
- Inherits:
-
Object
- Object
- S3MediaServerApi::AwsFile
show all
- Defined in:
- lib/s3_media_server_api/aws_file.rb
Defined Under Namespace
Classes: AwsFileError, CompleteUploadError, FileCreationError
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(response) ⇒ AwsFile
Returns a new instance of AwsFile.
4
5
6
|
# File 'lib/s3_media_server_api/aws_file.rb', line 4
def initialize(response)
@params = response[:data]
end
|
Class Method Details
.complete_upload(uuid) ⇒ Object
completes multipart upload parameters: uuid - file uuid
.create_from_path(file_path) ⇒ Object
creates file on s3_media_server parameters: file_path - path on file system to file
returns: response with created file
58
59
60
61
62
63
64
65
66
67
|
# 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) ⇒ Object
98
99
100
|
# 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) ⇒ Object
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
84
85
86
87
|
# 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
|
.resolve(uuid) ⇒ Object
fetches media file parameters: uuid - uuid of file
returns: response with file information
74
75
76
|
# File 'lib/s3_media_server_api/aws_file.rb', line 74
def resolve(uuid)
AsynkRequest.sync_request(base_path, :resolve, uuid: uuid)
end
|
Instance Method Details
#as_hash ⇒ Object
40
41
42
|
# File 'lib/s3_media_server_api/aws_file.rb', line 40
def as_hash
@params
end
|
#default_part_size ⇒ Object
24
25
26
|
# File 'lib/s3_media_server_api/aws_file.rb', line 24
def default_part_size
@params[:default_part_size]
end
|
#exists? ⇒ Boolean
44
45
46
|
# File 'lib/s3_media_server_api/aws_file.rb', line 44
def exists?
!@params.empty?
end
|
#mime_type ⇒ Object
16
17
18
|
# File 'lib/s3_media_server_api/aws_file.rb', line 16
def mime_type
@params[:mime_type]
end
|
#name ⇒ Object
36
37
38
|
# File 'lib/s3_media_server_api/aws_file.rb', line 36
def name
@params[:name]
end
|
#public_url ⇒ Object
32
33
34
|
# File 'lib/s3_media_server_api/aws_file.rb', line 32
def public_url
@params[:public_url]
end
|
#size ⇒ Object
12
13
14
|
# File 'lib/s3_media_server_api/aws_file.rb', line 12
def size
@params[:size]
end
|
#state ⇒ Object
28
29
30
|
# File 'lib/s3_media_server_api/aws_file.rb', line 28
def state
@params[:state]
end
|
#uploads_count ⇒ Object
20
21
22
|
# File 'lib/s3_media_server_api/aws_file.rb', line 20
def uploads_count
@params[:uploads_count]
end
|
#uuid ⇒ Object
8
9
10
|
# File 'lib/s3_media_server_api/aws_file.rb', line 8
def uuid
@params[:uuid]
end
|