Sha256: 5a53e10eea03e9ae9ce4750f82cdb1b653c419fe28445660a7caf63690befe29

Contents?: true

Size: 782 Bytes

Versions: 21

Compression:

Stored size: 782 Bytes

Contents

# frozen_string_literal: true

module Vedeu

  module Repositories

    # Provides behaviour for resetting and accessing the storage of
    # various repositories.
    #
    # @api private
    #
    module Storage

      extend self

      # Remove all currently stored data for this repository.
      #
      # @return [void]
      def reset!
        Vedeu.log(type:    :reset,
                  message: "Resetting repository '#{self.class.name}'")

        @storage = in_memory
      end
      alias reset reset!

      # Return whole repository; provides raw access to the storage
      # for this repository.
      #
      # @return [void]
      def storage
        @storage ||= in_memory
      end
      alias all storage

    end # Storage

  end # Repositories

end # Vedeu

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
vedeu-0.8.12 lib/vedeu/repositories/storage.rb