Class: Talkshow::Server
- Inherits:
-
Sinatra::Base
- Object
- Sinatra::Base
- Talkshow::Server
- Defined in:
- lib/talkshow/server.rb
Constant Summary collapse
- @@logfile =
'./talkshowserver.log'
Class Method Summary collapse
- .answer_queue(queue = nil) ⇒ Object
- .question_queue(queue = nil) ⇒ Object
- .set_logfile(file) ⇒ Object
- .set_port(port) ⇒ Object
Instance Method Summary collapse
-
#handle_answer(params, data) ⇒ Object
Deal with an answer, push it back to the main thread.
- #logger ⇒ Object
Class Method Details
.answer_queue(queue = nil) ⇒ Object
42 43 44 45 46 47 |
# File 'lib/talkshow/server.rb', line 42 def self.answer_queue(queue = nil) if queue @@answer_queue = queue end @@answer_queue end |
.question_queue(queue = nil) ⇒ Object
35 36 37 38 39 40 |
# File 'lib/talkshow/server.rb', line 35 def self.question_queue(queue = nil) if queue @@question_queue = queue end @@question_queue end |
.set_logfile(file) ⇒ Object
29 30 31 32 33 |
# File 'lib/talkshow/server.rb', line 29 def self.set_logfile file @@logfile = file @logger.close if @logger @logger = nil end |
.set_port(port) ⇒ Object
24 25 26 |
# File 'lib/talkshow/server.rb', line 24 def self.set_port port set :port, port end |
Instance Method Details
#handle_answer(params, data) ⇒ Object
Deal with an answer, push it back to the main thread
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
# File 'lib/talkshow/server.rb', line 136 def handle_answer(params, data) if params[:status] != 'nop' Talkshow::Server.answer_queue.push( { :data => data, :object => params[:object], :status => params[:status], :chunks => params[:chunks], :payload => params[:payload], :id => params[:id] } ) end logger.info( "/answer ##{params[:id]}"+ ( params[:chunks] ? "(#{params[:payload].to_i+1}/#{params[:chunks]})" : '') +": #{data}" ) if params[:id] == 0 logger.info( "Reset received, talkshow reloaded") end content_type 'text/javascript' 'ts.ack();' end |
#logger ⇒ Object
50 51 52 53 54 55 |
# File 'lib/talkshow/server.rb', line 50 def logger if !@logger @logger = Logger.new(@@logfile) end @logger end |