Class: Server
- Inherits:
-
Sinatra::Base
- Object
- Sinatra::Base
- Server
- Defined in:
- lib/server.rb
Overview
Sinatra server to host the statistics for the CobwebCrawler
Class Method Summary collapse
- .cobweb_options ⇒ Object
-
.start(options = {}) ⇒ Object
Starts the Sinatra server, and kills the processes when shutdown.
Instance Method Summary collapse
Class Method Details
.cobweb_options ⇒ Object
106 107 108 |
# File 'lib/server.rb', line 106 def self. @options end |
.start(options = {}) ⇒ Object
Starts the Sinatra server, and kills the processes when shutdown
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
# File 'lib/server.rb', line 86 def self.start(={}) @options = @options[:redis_options] = {} unless @options.has_key? :redis_options unless Server.running? if @options[:run_as_server] puts "Starting Sinatra for cobweb v#{Cobweb.version}" Server.run! puts "Stopping crawl..." else thread = Thread.new do puts "Starting Sinatra" Server.run! puts "Stopping crawl..." ## we need to manually kill the main thread as sinatra traps the interrupts Thread.main.kill end end end end |
Instance Method Details
#cobweb_version(crawl_id) ⇒ Object
73 74 75 76 77 78 79 |
# File 'lib/server.rb', line 73 def cobweb_version(crawl_id) redis = RedisConnection.new() key = redis.keys("cobweb-*-#{crawl_id}:queued").first key =~ /cobweb-(.*?)-(.*?):queued/ cobweb_version = $1 end |
#redis_options ⇒ Object
81 82 83 |
# File 'lib/server.rb', line 81 def Server.[:redis_options] end |