'Convert int prefixed strings into calls to stringReceived.'

def dataReceived(self, data):

    alldata = (self._unprocessed + data)
    currentOffset = 0
    prefixLength = self.prefixLength
    fmt = self.structFormat
    self._unprocessed = alldata
    while ((len(alldata) >= (currentOffset + prefixLength)) and (not self.paused)):
        messageStart = (currentOffset + prefixLength)
        (length,) = unpack(fmt, alldata[currentOffset:messageStart])
        if (length > self.MAX_LENGTH):
            self._unprocessed = alldata
            self._compatibilityOffset = currentOffset
            self.lengthLimitExceeded(length)
            return
        messageEnd = (messageStart + length)
        if (len(alldata) < messageEnd):
            break
        packet = alldata[messageStart:messageEnd]
        currentOffset = messageEnd
        self._compatibilityOffset = currentOffset
        self.stringReceived(packet)
        if ('recvd' in self.__dict__):
            alldata = self.__dict__.pop('recvd')
            self._unprocessed = alldata
            self._compatibilityOffset = currentOffset = 0
            if alldata:
                continue
            return
    self._unprocessed = alldata[currentOffset:]
    self._compatibilityOffset = 0
