diff options
Diffstat (limited to 'lib/gitlab/safe_request_store.rb')
-rw-r--r-- | lib/gitlab/safe_request_store.rb | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/lib/gitlab/safe_request_store.rb b/lib/gitlab/safe_request_store.rb deleted file mode 100644 index 203d7d10532..00000000000 --- a/lib/gitlab/safe_request_store.rb +++ /dev/null @@ -1,46 +0,0 @@ -# frozen_string_literal: true - -module Gitlab - module SafeRequestStore - NULL_STORE = Gitlab::NullRequestStore.new - - class << self - # These methods should always run directly against RequestStore - delegate :clear!, :begin!, :end!, :active?, to: :RequestStore - - # These methods will run against NullRequestStore if RequestStore is disabled - delegate :read, :[], :write, :[]=, :exist?, :fetch, :delete, to: :store - end - - def self.store - if RequestStore.active? - RequestStore - else - NULL_STORE - end - end - - # Access to the backing storage of the request store. This returns an object - # with `[]` and `[]=` methods that does not discard values. - # - # This can be useful if storage is needed for a delimited purpose, and the - # forgetful nature of the null store is undesirable. - def self.storage - store.store - end - - # This method accept an options hash to be compatible with - # ActiveSupport::Cache::Store#write method. The options are - # not passed to the underlying cache implementation because - # RequestStore#write accepts only a key, and value params. - def self.write(key, value, options = nil) - store.write(key, value) - end - - def self.delete_if(&block) - return unless RequestStore.active? - - storage.delete_if { |k, v| yield(k) } - end - end -end |