Sha256: 78cf4ecec2e17e1926f79cbb8d356327baf47fdf3b20e3053d7fd82db07e0a66

Contents?: true

Size: 453 Bytes

Versions: 2

Compression:

Stored size: 453 Bytes

Contents

require 'cinch/storage/version'
require 'psych'

class CinchStorage
  attr_accessor :filename, :data

  def initialize(file, init = Hash.new)
    @filename = file
    @data = Psych::load(File.open(@filename)) if File::exist?(@filename)
    @data ||= init
  end

  def save
    File.open(@filename, 'w') do |file|
      Psych::dump(@data, file)
    end
  end

  def synced_save(bot = @bot)
    bot.synchronize(@filename) do
      save
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
cinch-storage-1.0.3 lib/cinch-storage.rb
cinch-storage-1.0.2 lib/cinch-storage.rb