Enable buffering for Turtle Commands in WebSocket output
This commit is contained in:
@ -278,19 +278,24 @@ class SubmissionsController < ApplicationController
|
|||||||
for part in message.split("\n")
|
for part in message.split("\n")
|
||||||
self.parse_message(part,output_stream,socket, container, false)
|
self.parse_message(part,output_stream,socket, container, false)
|
||||||
end
|
end
|
||||||
elsif message.include? '<img'
|
elsif message.include?('<img') || message.start_with?('{"cmd":')
|
||||||
#Rails.logger.info('img foung')
|
#Rails.logger.info('img foung')
|
||||||
@buffering = true
|
@buffering = true
|
||||||
@buffer = ''
|
@buffer = ''
|
||||||
@buffer += message
|
@buffer += message
|
||||||
#Rails.logger.info('Starting to buffer')
|
#Rails.logger.info('Starting to buffer')
|
||||||
elsif @buffering and message.include? '/>'
|
elsif @buffering and message.include?('/>')
|
||||||
@buffer += message
|
@buffer += message
|
||||||
parsed = {'cmd'=>'write','stream'=>output_stream,'data'=>@buffer}
|
parsed = {'cmd'=>'write','stream'=>output_stream,'data'=>@buffer}
|
||||||
socket.send_data JSON.dump(parsed)
|
socket.send_data JSON.dump(parsed)
|
||||||
#socket.send_data @buffer
|
#socket.send_data @buffer
|
||||||
@buffering = false
|
@buffering = false
|
||||||
#Rails.logger.info('Sent complete buffer')
|
#Rails.logger.info('Sent complete buffer')
|
||||||
|
elsif @buffering and message.end_with?("}\r")
|
||||||
|
@buffer += message
|
||||||
|
socket.send_data @buffer
|
||||||
|
@buffering = false
|
||||||
|
#Rails.logger.info('Sent complete buffer')
|
||||||
elsif @buffering
|
elsif @buffering
|
||||||
@buffer += message
|
@buffer += message
|
||||||
#Rails.logger.info('Appending to buffer')
|
#Rails.logger.info('Appending to buffer')
|
||||||
|
Reference in New Issue
Block a user