Sha256: 64d2f52b29bc05f79fa4b3e4f8696e6248e58ede8b6d8562dee4cfc00568c964
Contents?: true
Size: 1.02 KB
Versions: 2
Compression:
Stored size: 1.02 KB
Contents
require 'directory_watcher' module LedgerWeb class Watcher def self.run! directory = LedgerWeb::Config.instance.get :watch_directory glob = "*" if directory.nil? directory = File.dirname(LedgerWeb::Config.instance.get :ledger_file) glob = File.basename(LedgerWeb::Config.instance.get :ledger_file) end @@dw = DirectoryWatcher.new directory, :glob => glob @@dw.interval = LedgerWeb::Config.instance.get :watch_interval @@dw.stable = LedgerWeb::Config.instance.get :watch_stable_count LedgerWeb::Database.connect @@dw.add_observer do |*args| args.each do |event| if event.type == :stable puts "Loading database" LedgerWeb::Database.run_migrations file = LedgerWeb::Database.dump_ledger_to_csv count = LedgerWeb::Database.load_database(file) puts "Loaded #{count} records" end end end @@dw.start end def self.stop! @@dw.stop end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ledger_web-1.5.2 | lib/ledger_web/watcher.rb |
ledger_web-1.5.1 | lib/ledger_web/watcher.rb |