Class: Aws::S3::MultipartFileUploader::PartList Private

Inherits:
Object
  • Object
show all
Defined in:
lib/aws-sdk-s3/multipart_file_uploader.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Constructor Details

#initialize(parts = []) ⇒ PartList

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of PartList.



198
199
200
201
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 198

def initialize(parts = [])
  @parts = parts
  @mutex = Mutex.new
end

Instance Method Details

#clear!Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



211
212
213
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 211

def clear!
  @mutex.synchronize { @parts.clear }
end

#part_sizesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



219
220
221
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 219

def part_sizes
  @mutex.synchronize { @parts.map { |p| p[:body].size } }
end

#push(part) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



203
204
205
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 203

def push(part)
  @mutex.synchronize { @parts.push(part) }
end

#shiftObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



207
208
209
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 207

def shift
  @mutex.synchronize { @parts.shift }
end

#sizeObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



215
216
217
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 215

def size
  @mutex.synchronize { @parts.size }
end

#to_aObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



223
224
225
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 223

def to_a
  @mutex.synchronize { @parts.dup }
end