+ if @registry.has_key?('enabled')
+ @bot.config['markov.enabled'] = @registry['enabled']
+ @registry.delete('enabled')
+ end
+ if @registry.has_key?('probability')
+ @bot.config['markov.probability'] = @registry['probability']
+ @registry.delete('probability')
+ end
+ if @bot.config['markov.ignore_users']
+ debug "moving markov.ignore_users to markov.ignore"
+ @bot.config['markov.ignore'] = @bot.config['markov.ignore_users'].dup
+ @bot.config.delete('markov.ignore_users')
+ end
+ @learning_queue = Queue.new
+ @learning_thread = Thread.new do
+ while s = @learning_queue.pop
+ learn s
+ sleep 0.5
+ end
+ end
+ @learning_thread.priority = -1
+ end
+
+ def cleanup
+ debug 'closing learning thread'
+ @learning_queue.push nil
+ @learning_thread.join
+ debug 'learning thread closed'