mirror of
https://github.com/TimeCrafters/timecrafters_configuration_tool_desktop.git
synced 2025-12-16 13:52:34 +00:00
Added Logger, added TACNET test server, networking now seems to work(heartbeats are sent and received)
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
module TAC
|
||||
class TACNET
|
||||
class Client
|
||||
TAG = "TACNET|Client"
|
||||
CHUNK_SIZE = 4096
|
||||
|
||||
attr_reader :uuid, :read_queue, :write_queue, :socket,
|
||||
@@ -32,6 +33,8 @@ module TAC
|
||||
if message_in.empty?
|
||||
break
|
||||
else
|
||||
log.i(TAG, "Read: " + message_in)
|
||||
|
||||
@read_queue << message_in
|
||||
|
||||
@packets_received += 1
|
||||
@@ -39,12 +42,19 @@ module TAC
|
||||
end
|
||||
end
|
||||
|
||||
sleep @sync_interval / 1000.0
|
||||
end
|
||||
end
|
||||
|
||||
Thread.new do
|
||||
while connected?
|
||||
# Write to socket
|
||||
while message_out = @write_queue.shift
|
||||
write(message_out)
|
||||
|
||||
@packets_sent += 1
|
||||
@data_sent += message_out.length
|
||||
@data_sent += message_out.to_s.length
|
||||
log.i(TAG, "Write: " + message_out.to_s)
|
||||
end
|
||||
|
||||
sleep @sync_interval / 1000.0
|
||||
@@ -52,7 +62,7 @@ module TAC
|
||||
end
|
||||
end
|
||||
|
||||
def sync(&block)
|
||||
def sync(block)
|
||||
block.call
|
||||
end
|
||||
|
||||
@@ -62,6 +72,8 @@ module TAC
|
||||
while message
|
||||
puts(message)
|
||||
|
||||
log.i(TAG, "Writing to Queue: " + message)
|
||||
|
||||
message = gets
|
||||
end
|
||||
end
|
||||
@@ -79,7 +91,12 @@ module TAC
|
||||
end
|
||||
|
||||
def write(message)
|
||||
@socket.puts("#{message}\r\n\n")
|
||||
begin
|
||||
@socket.puts("#{message}\r\n\n")
|
||||
rescue Errno::EPIPE, IOError => error
|
||||
log.e(TAG, error.message)
|
||||
close
|
||||
end
|
||||
end
|
||||
|
||||
def read
|
||||
@@ -87,10 +104,14 @@ module TAC
|
||||
|
||||
begin
|
||||
data = @socket.readpartial(CHUNK_SIZE)
|
||||
message += message
|
||||
message += data
|
||||
rescue Errno::EPIPE, EOFError
|
||||
message = ""
|
||||
break
|
||||
end until message.end_with?("\r\n\n")
|
||||
|
||||
return message
|
||||
|
||||
return message.strip
|
||||
end
|
||||
|
||||
def puts(message)
|
||||
|
||||
Reference in New Issue
Block a user