expects FileInfo

def process_data(self, file_info):
        """expects FileInfo"""
        if self._has_reached_stop_limit():
            self.log.info("Remaining bytes in quota (%d) has reached minimum to request stop (%d)",
                          self._quota.remaining, self._stop_on_remaining)
            self.fire(events.TransmissionQuotaReached())
        elif not self._fits_in_quota(file_info):
            self.log.debug("File would exceed quota. Won't process '%s'", str(file_info))
        else:
            return file_info
        self.fire(events.FilteredFile(file_info))