Sha256: 3ff8d921c90bad9d717ee2b606013bdb6b965e3a00b1ddbc1a92461dc180fc68

Contents?: true

Size: 1.18 KB

Versions: 41

Compression:

Stored size: 1.18 KB

Contents

module ActiveFedora
  module Cleaner
    def self.clean!
      cleanout_fedora
      reinitialize_repo
      cleanout_solr
    end

    def self.cleanout_fedora
      delete_root_resource
      delete_tombstone
    rescue Ldp::HttpError => exception
      log "#cleanout_fedora in spec_helper.rb raised #{exception}"
    end

    def self.delete_root_resource
      connection.delete(root_resource_path)
    rescue Ldp::Gone
    end

    def self.delete_tombstone
      connection.delete(tombstone_path)
    end

    def self.tombstone_path
      root_resource_path + "/fcr:tombstone"
    end

    def self.root_resource_path
      ActiveFedora.fedora.root_resource_path
    end

    def self.connection
      ActiveFedora.fedora.connection
    end

    def self.solr_connection
      ActiveFedora::SolrService.instance && ActiveFedora::SolrService.instance.conn
    end

    def self.cleanout_solr
      restore_spec_configuration if solr_connection.nil?
      solr_connection.delete_by_query('*:*', params: { 'softCommit' => true })
    end

    def self.reinitialize_repo
      ActiveFedora::Fedora.reset!
    end

    def self.log(message)
      ActiveFedora::Base.logger.debug message
    end
  end
end

Version data entries

41 entries across 41 versions & 1 rubygems

Version Path
active-fedora-13.3.0 lib/active_fedora/cleaner.rb
active-fedora-12.2.4 lib/active_fedora/cleaner.rb
active-fedora-13.2.7 lib/active_fedora/cleaner.rb
active-fedora-13.2.5 lib/active_fedora/cleaner.rb
active-fedora-13.2.4 lib/active_fedora/cleaner.rb
active-fedora-12.2.3 lib/active_fedora/cleaner.rb
active-fedora-13.2.3 lib/active_fedora/cleaner.rb
active-fedora-13.2.2 lib/active_fedora/cleaner.rb
active-fedora-13.2.0 lib/active_fedora/cleaner.rb
active-fedora-13.1.3 lib/active_fedora/cleaner.rb
active-fedora-11.5.6 lib/active_fedora/cleaner.rb
active-fedora-12.2.2 lib/active_fedora/cleaner.rb
active-fedora-11.2.1 lib/active_fedora/cleaner.rb
active-fedora-12.2.1 lib/active_fedora/cleaner.rb
active-fedora-12.0.3 lib/active_fedora/cleaner.rb
active-fedora-11.5.5 lib/active_fedora/cleaner.rb
active-fedora-13.1.2 lib/active_fedora/cleaner.rb
active-fedora-13.1.1 lib/active_fedora/cleaner.rb
active-fedora-13.1.0 lib/active_fedora/cleaner.rb
active-fedora-13.0.0 lib/active_fedora/cleaner.rb