Class: CloudConvert::Resources::Tasks
Instance Attribute Summary
#client
Instance Method Summary
collapse
#initialize
Instance Method Details
6
7
8
|
# File 'lib/cloudconvert/resources/tasks.rb', line 6
def all(params = {})
Task.collection(client.get("/v2/tasks", params))
end
|
#cancel(id) ⇒ Task
35
36
37
|
# File 'lib/cloudconvert/resources/tasks.rb', line 35
def cancel(id)
Task.result(client.post("/v2/tasks/#{id}/cancel"))
end
|
#create(params = {}) ⇒ Task
20
21
22
23
24
25
26
27
28
29
30
31
|
# File 'lib/cloudconvert/resources/tasks.rb', line 20
def create(params = {})
schema = Schemacop::Schema.new do
type :hash, allow_obsolete_keys: true do
req :operation, :string
req :input, :string unless params[:operation].nil? || params[:operation].start_with?("import")
end
end
schema.validate! params
Task.result(client.post("/v2/#{params[:operation]}", params))
end
|
#delete(id) ⇒ void
This method returns an undefined value.
41
42
43
|
# File 'lib/cloudconvert/resources/tasks.rb', line 41
def delete(id)
client.delete("/v2/tasks/#{id}")
end
|
#find(id, params = {}) ⇒ Task
13
14
15
|
# File 'lib/cloudconvert/resources/tasks.rb', line 13
def find(id, params = {})
Task.result(client.get("/v2/tasks/#{id}", params))
end
|
#retry(id) ⇒ Task
47
48
49
|
# File 'lib/cloudconvert/resources/tasks.rb', line 47
def retry(id)
Task.result(client.post("/v2/tasks/#{id}/retry"))
end
|
#upload(file, task) ⇒ void
This method returns an undefined value.
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# File 'lib/cloudconvert/resources/tasks.rb', line 60
def upload(file, task)
unless task.operation == "import/upload"
raise ArgumentError.new("The task operation is not import/upload")
end
unless task.result && task.result.form && task.waiting?
raise ArgumentError.new("The task is not ready for uploading")
end
file = File.new(file) unless file.is_a? File
client.post(task.result.form.url, task.result.form.parameters.to_h.merge(file: file)) do |request|
request..delete("Authorization")
request.["Content-Type"] = "multipart/form-data"
end
nil
end
|
#wait(id) ⇒ Task
53
54
55
|
# File 'lib/cloudconvert/resources/tasks.rb', line 53
def wait(id)
Task.result(client.get(client.api_sync_host + "/v2/tasks/#{id}"))
end
|