summaryrefslogtreecommitdiff
path: root/lib/dashing/app.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/dashing/app.rb')
-rw-r--r--lib/dashing/app.rb13
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/dashing/app.rb b/lib/dashing/app.rb
index 033849c..0e7f7bb 100644
--- a/lib/dashing/app.rb
+++ b/lib/dashing/app.rb
@@ -6,6 +6,7 @@ require 'coffee-script'
require 'sass'
require 'json'
require 'yaml'
+require 'thin'
SCHEDULER = Rufus::Scheduler.new
@@ -49,7 +50,7 @@ end
end
not_found do
- send_file File.join(settings.public_folder, '404.html')
+ send_file File.join(settings.public_folder, '404.html'), status: 404
end
at_exit do
@@ -119,6 +120,16 @@ get '/views/:widget?.html' do
end
end
+Thin::Server.class_eval do
+ def stop_with_connection_closing
+ Sinatra::Application.settings.connections.dup.each(&:close)
+ stop_without_connection_closing
+ end
+
+ alias_method :stop_without_connection_closing, :stop
+ alias_method :stop, :stop_with_connection_closing
+end
+
def send_event(id, body, target=nil)
body[:id] = id
body[:updatedAt] ||= Time.now.to_i