Sha256: a8936d12f4f4b9ef9d8047cd3437bcdf362a3ddde9133d964ea99008bacdc498

Contents?: true

Size: 618 Bytes

Versions: 3

Compression:

Stored size: 618 Bytes

Contents

require 'multi_json'

module Fitting
  module Storage
    class JsonFile
      NAME = 'storage.json'.freeze

      def self.craft
        save({})
      end

      def self.save(json)
        File.open(NAME, 'w') do |file|
          file.write(MultiJson.dump(json))
        end
      end

      def self.push(key, value)
        save(tests.merge(key => value))
      rescue
      end

      def self.tests
        MultiJson.load(File.read(NAME))
      rescue
      end

      def self.load
        MultiJson.load(File.read(NAME))
      end

      def self.destroy
        File.delete(NAME)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fitting-0.4.2 lib/fitting/storage/json_file.rb
fitting-0.4.1 lib/fitting/storage/json_file.rb
fitting-0.3.0 lib/fitting/storage/json_file.rb