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.



180
181
182
183
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 180

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.



193
194
195
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 193

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.



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

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.



185
186
187
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 185

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.



189
190
191
# File 'lib/aws-sdk-s3/multipart_file_uploader.rb', line 189

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.



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

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.



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

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