(self, data)
Flush `data` to a chunk.
Flush `data` to a chunk.
Flush data to a chunk .
def __flush_data(self, data):
        """Flush `data` to a chunk.
        """
        # Ensure the index, even if there's nothing to write, so
        # the filemd5 command always succeeds.
        self.__ensure_indexes()
        self._file['md5'].update(data)

        if not data:
            return
        assert(len(data) <= self.chunk_size)

        chunk = {"files_id": self._file["_id"],
                 "n": self._chunk_number,
                 "data": Binary(data)}

        try:
            self._chunks.insert_one(chunk)
        except DuplicateKeyError:
            self._raise_file_exists(self._file['_id'])
        self._chunk_number += 1
        self._position += len(data)
def __flush_data ( self , data ) : # Ensure the index, even if there's nothing to write, so # the filemd5 command always succeeds. self . __ensure_indexes ( ) self . _file [ 'md5' ] . update ( data ) if not data : return assert ( len ( data ) <= self . chunk_size ) chunk = { "files_id" : self . _file [ "_id" ] , "n" : self . _chunk_number , "data" : Binary ( data ) } try : self . _chunks . insert_one ( chunk ) except DuplicateKeyError : self . _raise_file_exists ( self . _file [ '_id' ] ) self . _chunk_number += 1 self . _position += len ( data )