Module: Cloudphoto::List

Defined in:
lib/cloudphoto/list.rb

Class Method Summary collapse

Class Method Details

.list_albumsObject



17
18
19
20
21
22
# File 'lib/cloudphoto/list.rb', line 17

def list_albums
  albums = Cloudphoto::Aws.list_objects.select do |path|
    /\A\.albums\/.+?\/\z/.match?(path)
  end
  albums.map! { |path| path.delete_prefix("#{ALBUMS_PREFIX}/").delete_suffix("/") }
end

.list_keys(prefix) ⇒ Object



30
31
32
33
34
# File 'lib/cloudphoto/list.rb', line 30

def list_keys(prefix)
  Cloudphoto::Aws.list_objects.select do |path|
    path.start_with?(prefix)
  end.reject { |path| path == prefix }
end

.list_photos(album) ⇒ Object



24
25
26
27
28
# File 'lib/cloudphoto/list.rb', line 24

def list_photos(album)
  album_path = "#{ALBUMS_PREFIX}/#{album}/"
  photos = list_keys(album_path)
  photos.map! { |path| path.delete_prefix(album_path) }
end