Sha256: 4002cc83515ef47852dd802e0a8eddb4feddbcbbd6fce388349ba6d16c24b656

Contents?: true

Size: 1.06 KB

Versions: 18

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true
module Hyrax
  module DataDestroyers
    # Stats are tightly coupled to works and files in the repository. When they
    # are removed using wipe!, the associated database entries for stats also
    # need to be deleted.
    #
    # @note WARNING: DO NOT USE IN PRODUCTION!  The methods in this class are destructive.
    #   Data can not be recovered.
    #
    class StatsDestroyer
      class << self
        attr_accessor :logger

        def destroy_data(logger: Logger.new(STDOUT), allow_destruction_in_production: false)
          raise("StatsDataDestroyer is not for use in production!") if Rails.env.production? && !allow_destruction_in_production
          @logger = logger

          logger.info("Destroying stats...")

          FileDownloadStat.destroy_all
          logger.info("   file download stats -- DESTROYED")

          FileViewStat.destroy_all
          logger.info("   file view stats -- DESTROYED")

          WorkViewStat.destroy_all
          logger.info("   work view stats -- DESTROYED")
        end
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
hyrax-5.0.4 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.3 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.2 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.1 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.0 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.0.rc3 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.0.rc2 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-5.0.0.rc1 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-3.6.0 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-4.0.0 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-4.0.0.rc3 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-4.0.0.rc2 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-4.0.0.rc1 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-3.5.0 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-4.0.0.beta2 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-3.4.2 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-4.0.0.beta1 app/utils/hyrax/data_destroyers/stats_destroyer.rb
hyrax-3.4.1 app/utils/hyrax/data_destroyers/stats_destroyer.rb