Method: Trove::Storage::S3#versions

Defined in:
lib/trove/storage/s3.rb

#versions(filename) ⇒ Object



92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'lib/trove/storage/s3.rb', line 92

def versions(filename)
  versions = []
  object_key = key(filename)
  client.list_object_versions(bucket: bucket, prefix: object_key).each do |response|
    response.versions.each do |version|
      next if version.key != object_key

      versions << {
        version: version.version_id == "null" ? nil : version.version_id,
        size: version.size,
        updated_at: version.last_modified
      }
    end
  end
  versions
end