def _visit_recur(self, item):
        """
        Recursively visits children of item.
        :param item: object: project, folder or file we will add to upload_items if necessary.
        """
        if item.kind == KindType.file_str:
            if item.need_to_send:
                self.add_upload_item(item.path)
        else:
            if item.kind == KindType.project_str:
                pass
            else:
                if not item.remote_id:
                    self.add_upload_item(item.path)
            for child in item.children:
                self._visit_recur(child)