'Upload an object.
Note: Backblaze does not yet support uploading via stream,
so this calls upload_object internally requiring the object data
to be loaded into memory at once'

def upload_object_via_stream(self, iterator, container, object_name, extra=None, headers=None):

    iterator = read_in_chunks(iterator=iterator)
    data = exhaust_iterator(iterator=iterator)
    obj = self._perform_upload(data=data, container=container, object_name=object_name, extra=extra, headers=headers)
    return obj
