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.



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

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.



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

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.



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

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.



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

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.



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

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.



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

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.



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

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