lib/sfpagent/agent.rb in sfpagent-0.2.3 vs lib/sfpagent/agent.rb in sfpagent-0.2.4

- old
+ new

@@ -558,10 +558,11 @@ f.truncate(f.pos) end } if updated + @@agents_database = agents Thread.new { # if updated then broadcast to other agents http_data = {'agents' => JSON.generate(data)} agents.each { |name,agent| begin @@ -577,10 +578,12 @@ true end def self.get_agents return {} if not File.exist?(AgentsDataFile) - return @@agents_database if File.mtime(AgentsDataFile) == @@agents_database_modified_time + modified_time = File.mtime(AgentsDataFile) + return @@agents_database if modified_time == @@agents_database_modified_time and + (Time.new - modified_time) < 60 @@agents_database_modified_time = File.mtime(AgentsDataFile) @@agents_database = JSON[File.read(AgentsDataFile)] end # A class that handles HTTP request.