Пример #1
0
 def flush(self, notice=None, force=False):
   from fooling.indexer import Indexer
   if force:
     self._last_unindexed_loc = len(self)-1
   if self._last_unindexed_loc:
     indexer = Indexer(self, verbose=self.verbose)
     prevloc = int(self.index_lastloc() or '-1')
     lastloc = int(self._last_unindexed_loc)
     # notice is a function that receives the number of docs being indexed.
     if notice:
       notice(lastloc - prevloc)
     for i in xrange(prevloc+1, lastloc+1):
       indexer.index_doc(str(i), indexyomi=config.INDEX_YOMI)
     indexer.finish()
     self.merge(force)
     self._last_unindexed_loc = None
   return