# File lib/ferret/index.rb, line 632 632: def persist(directory, create = true) 633: synchronize do 634: close_all() 635: old_dir = @dir 636: if directory.is_a?(String) 637: @dir = FSDirectory.new(directory, create) 638: elsif directory.is_a?(Ferret::Store::Directory) 639: @dir = directory 640: end 641: @dir.extend(MonitorMixin).extend(SynchroLockMixin) 642: @options[:dir] = @dir 643: @options[:create_if_missing] = true 644: add_indexes([old_dir]) 645: end 646: end