Esempio n. 1
0
    def select(self, item):
        """Select an item from the KB.

        Args:
            item ({attribute_name: attribute_value})

        Returns:
            SelectionEvent

        """
        return Event.SelectionEvent(self.agent, item, time=self.timestamp())
Esempio n. 2
0
 def select(self, userid, idx):
     try:
         with self.conn:
             cursor = self.conn.cursor()
             u = self._get_user_info_unchecked(cursor, userid)
             scenario = self.scenario_db.get(u.scenario_id)
             kb = scenario.get_kb(u.agent_index)
             item = kb.items[idx]
             self.send(userid, Event.SelectionEvent(u.agent_index,
                                                    item,
                                                    str(time.time())))
             return item
     except sqlite3.IntegrityError:
         print("WARNING: Rolled back transaction")
         return None