def put_continue_creation(self, token, content, content_range, last=False):
    gcs_file = _AE_GCSFileInfo_.get_by_key_name(token)
    if not gcs_file:
      raise ValueError('Invalid token')
    if content:
      start, end = content_range
      if len(content) != (end - start + 1):
        raise ValueError('Invalid content range %d-%d' % content_range)
      blobkey = '%s-%d-%d' % (token, content_range[0], content_range[1])
      self.blob_storage.StoreBlob(blobkey, StringIO.StringIO(content))
      new_content = _AE_GCSPartialFile_(parent=gcs_file,
                                        partial_content=blobkey,
                                        start=start,
                                        end=end + 1)
      new_content.put()
    if last:
      self._end_creation(token)
Continue object upload with PUTs.
dataset/ETHPy150Open AppScale/appscale/AppServer/google/appengine/ext/cloudstorage/cloudstorage_stub.py/CloudStorageStub.put_continue_creation