class Dag::ObjectCollection
Public Class Methods
new(api, bucket_name)
click to toggle source
Calls superclass method
Dag::Model::new
# File lib/dag/client/model/object_collection.rb, line 5 def initialize(api, bucket_name) super(api) @bucket = bucket_name end
Public Instance Methods
[](object_name)
click to toggle source
# File lib/dag/client/model/object_collection.rb, line 10 def [](object_name) object_named(object_name) end
each() { |object_opts(object)| ... }
click to toggle source
# File lib/dag/client/model/object_collection.rb, line 21 def each options = {} if @prefix options = options.merge(prefix: @prefix) end if @delimiter options = options.merge(delimiter: @delimiter) end marker = nil truncated = false begin if marker.present? options = options.merge(marker: marker) end objects_result = @api.objects(@bucket, options) objects = objects_result.full_objects truncated = objects_result.truncated? next_marker = objects_result.next_marker if next_marker.nil? marker = objects.last['Key'][0] if objects.present? else marker = next_marker end objects.each do |object| yield object_opts(object) end end while truncated end
where(prefix: nil, delimiter: nil)
click to toggle source
# File lib/dag/client/model/object_collection.rb, line 14 def where(prefix: nil, delimiter: nil) @prefix = prefix @delimiter = delimiter self end
Private Instance Methods
object_named(object_name)
click to toggle source
# File lib/dag/client/model/object_collection.rb, line 56 def object_named(object_name) Dag::Object.new(@api, @bucket, object_name.to_s) end
object_opts(object_opts)
click to toggle source
# File lib/dag/client/model/object_collection.rb, line 60 def object_opts(object_opts) Dag::Object.new(@api, @bucket, object_opts["Key"][0], object_opts) end