Class: Dropdown::Iterators::DropboxIterator

Inherits:
Object
  • Object
show all
Defined in:
lib/dropdown/iterators/dropbox_iterator.rb

Instance Method Summary collapse

Constructor Details

#initialize(source) ⇒ DropboxIterator

Returns a new instance of DropboxIterator.

Raises:

  • (ArgumentError)


7
8
9
10
# File 'lib/dropdown/iterators/dropbox_iterator.rb', line 7

def initialize(source)
  raise ArgumentError if source.nil?
  @source = source.sub(/(\/)+$/, '')
end

Instance Method Details

#eachObject



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/dropdown/iterators/dropbox_iterator.rb', line 12

def each
  contents = client.(@source)['contents']
  contents.each do |child|
    unless child['is_dir']
      path = child['path']
      if Dropdown::MARKDOWN_EXTENSIONS.include? File.extname(path)
        yield path
      end
    end
  end
end