Dumps the provided message to this dump.

def dump(self, msg):
        '''
        Dumps the provided message to this dump.
        '''
        msg_size = len(msg)

        # We start a new batch if the resulting batch file is larger than the
        # max batch file size. However, if the current batch file size is zero
        # then that means the message alone is larger than the max batch file
        # size. In this case instead of splitting up the message across files
        # which would greatly increase complexity we simply dump that message
        # into a file of its own even though it will be larger than the max
        # batch file size.
        if self._batch_size + msg_size > self._max_batch_file_size \
                and self._batch_size > 0:
            self._startNewBatch()

        # Write the time stamp and information on how to retrieve the message
        # from the batch files (batch filename, byte offset, and byte size)
        global getTime
        index_file_entry = '{:},{:09d},{:},{:}\n'.format(
            getTime(), self._batch_index, self._batch_size, msg_size)
        if sys.version_info >= (3,):
            self._index_file.write(index_file_entry.encode('utf-8'))
        else:
            self._index_file.write(index_file_entry)

        # Dump the message itself to the current batch file
        self._batch_file.write(msg)
        self._batch_size += msg_size

        # Increment message count
        self._message_count += 1