Module: Putio::Client::Files
- Included in:
- Putio::Client
- Defined in:
- lib/putio/client/files.rb
Instance Method Summary collapse
-
#delete_files(*file_ids) ⇒ Object
Deletes given files.
-
#file(id:, options: {}) ⇒ Putio::Resource::File
Returns a file’s properties.
-
#list_files(options: {}) ⇒ Array<Putio::Resource::File>
(also: #files)
Lists files in a folder.
-
#search(query:, options: {}) ⇒ Array<Putio::Resource::File>
Search a file.
Instance Method Details
#delete_files(*file_ids) ⇒ Object
Deletes given files
Returns [true]
91 92 93 94 95 96 97 98 99 |
# File 'lib/putio/client/files.rb', line 91 def delete_files(*file_ids) resp = post '/files/delete', { file_ids: file_ids.join(',') } if resp.body["status"] == "OK" true else false end end |
#file(id:, options: {}) ⇒ Putio::Resource::File
Returns a file’s properties.
79 80 81 82 83 84 85 |
# File 'lib/putio/client/files.rb', line 79 def file(id:, options:{}) defaults = { parent_id: 0 } = defaults.merge!() resp = get "/files/#{id}", file_factory.call(resp.body["file"]) end |
#list_files(options: {}) ⇒ Array<Putio::Resource::File> Also known as: files
Lists files in a folder
15 16 17 18 19 20 21 22 23 |
# File 'lib/putio/client/files.rb', line 15 def list_files(options:{}) defaults = { parent_id: 0 } = defaults.merge!() resp = get '/files/list', resp.body["files"].inject([]) do |memo, data| memo.push file_factory.call(data) end end |
#search(query:, options: {}) ⇒ Array<Putio::Resource::File>
Search a file
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/putio/client/files.rb', line 55 def search(query:, options: {}) = %i{ page from type ext time } .select! { |o| .include?(o) } page = .delete(:page) path = if page "/files/search/#{query}/page/#{page}" else "/files/search/#{query}" end resp = get path, resp.body["files"].inject([]) do |memo, data| memo.push file_factory.call(data) end end |