module Seamless class Dispatcher include Singleton def serialize(session,body) queue = session['_seamless_mq'] body << '' body << "" if queue queue.each do |msg| body << msg end session['_seamless_mq']=[] end body << '' end def outgoing(obj,type,message) queue = obj['session']['_seamless_mq'] if !queue queue = []; obj['session']['_seamless_mq'] = queue end #TODO requestid queue << "' end def incoming(session,request,response) body = request.env['RAW_POST_DATA'] if body node = REXML::Document.new(body) node.root.each_element('//message') do |message| requestid = message.attributes['requestid'] type = message.attributes['type'] text = message.text msg = JSON.parse(text) req = {'requestid'=>requestid, 'session'=>session} MessageBroker.send(req,type,msg) end end end end end