def run ( config ): util = TagNestUtil( config.get( 'Shared', 'database' ) ) util.log( "Index Daemon: File root: %s" % ( config.get( 'Shared', 'fileroot' ) ), util.LOG_INFO ) util.log( "Index Daemon: Refresh interval: %s" % ( config.getint( 'IndexDaemon', 'sleep' ) ), util.LOG_INFO ) while True: pending = util.get_files_pending_index() for row in pending: print '-----[ %s/%s ]-----' % ( row['path'], row['filename'] ) ft = util.get_fulltext_from_file( '%s/%s' % ( row['path'], row['filename'] ) ) if None == ft: util.mark_file_as_bad_mime_type( row['id'] ) else: ftlist = ft.split( ' ' ) del ft rtlist = [item for item in ftlist if len( item ) > 5] # TODO: All kinds of super awesome filtering here! del ftlist ft = ' '.join( rtlist ) del rtlist util.set_file_fulltext( row['id'], ft ) time.sleep( config.getint( 'IndexDaemon', 'Sleep' ) )