diff --git a/.gitignore b/.gitignore index a8b1cda..3a0eb22 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,6 @@ build/ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this: .rvmrc + +# for old fashioned emacs users like me +*~ diff --git a/lib/dropbox/client.rb b/lib/dropbox/client.rb index 2d80c2d..1c23772 100644 --- a/lib/dropbox/client.rb +++ b/lib/dropbox/client.rb @@ -125,9 +125,17 @@ def get_thumbnail(path, format='jpeg', size='w64h64') # Get the contents of a folder. # # @param [String] path + # @param [Hash] options + # @option (see #list_folder) # @return [Array] - def list_folder(path) - resp = request('/files/list_folder', path: path) + def list_folder(path, options={}) + options[:path] = path + options[:recursive] ||= false + options[:include_deleted] ||= false + options[:include_media_info] ||= false + options[:include_has_explicit_shared_members] ||= false + options[:include_mounted_folders] ||= true + resp = request('/files/list_folder', options) resp['entries'].map { |e| parse_tagged_response(e) } end diff --git a/lib/dropbox/metadata.rb b/lib/dropbox/metadata.rb index ac3669f..cca2097 100644 --- a/lib/dropbox/metadata.rb +++ b/lib/dropbox/metadata.rb @@ -14,7 +14,8 @@ def initialize(attrs={}) # Contains the metadata (but not contents) of a file. class FileMetadata < Metadata - attr_reader :id, :client_modified, :server_modified, :rev, :size + attr_reader :id, :client_modified, :server_modified, :rev, + :size, :content_hash def initialize(attrs={}) @id = attrs.delete('id') @@ -24,6 +25,7 @@ def initialize(attrs={}) @server_modified = Time.parse(attrs.delete('server_modified')) @rev = attrs.delete('rev') @size = attrs.delete('size') + @content_hash = attrs.delete('content_hash') super(attrs) end