def index_parent_child(self, parent, child=None): if ITracTicket.providedBy(parent): parent = parent.getId() if ITracTicket.providedBy(child): child = child.getId() parent = int(parent) child = int(child) if child else None self._children[parent] = self._children.get(parent, PersistentList()) if child is not None: self._children[parent].append(child)
def index(self, ticket): if not ITracTicket.providedBy(ticket): ticket = self.get(int(ticket)) tid = int(ticket.getId()) parent = ticket.parent if parent: self.index_parent_child(parent, tid) self._scores[tid] = ticket.score() self._reward[tid] = ticket.reward_ratio()