Sha256: 8a50625c463348b50dba389b69da9ece69f92ed3f4e9e0c1932a1789fd8d9550

Contents?: true

Size: 856 Bytes

Versions: 6

Compression:

Stored size: 856 Bytes

Contents

# frozen_string_literal: true

module DevSuite
  module Utils
    module Store
      module Driver
        class Memory < Base
          def initialize
            super
            @data = {}
          end

          def set(key, value)
            Data.set_value_by_path(@data, key, value)
          end

          def fetch(key)
            Data.get_value_by_path(@data, key)
          end

          def delete(key)
            Data.delete_key_by_path(@data, key)
          end

          def clear
            @data.clear
          end

          def import(source)
            raise ArgumentError, "The file does not exist" unless ::File.exist?(source)

            @data = FileLoader.load(source)
          end

          def export(destination)
            FileWriter.write(destination, @data)
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
dev_suite-0.2.13 lib/dev_suite/utils/store/driver/memory.rb
dev_suite-0.2.12 lib/dev_suite/utils/store/driver/memory.rb
dev_suite-0.2.11 lib/dev_suite/utils/store/driver/memory.rb
dev_suite-0.2.10 lib/dev_suite/utils/store/driver/memory.rb
dev_suite-0.2.9 lib/dev_suite/utils/store/driver/memory.rb
dev_suite-0.2.8 lib/dev_suite/utils/store/driver/memory.rb