Method: Netz::Client#setup_management_port

Defined in:
lib/netz/client.rb

#setup_management_portObject



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'lib/netz/client.rb', line 70

def setup_management_port
  puts "creating management port on #{MANAGEMENT_PORT}"
  begin
    server = TCPServer.open MANAGEMENT_PORT
    @management_accept_thread = Thread.new do
      begin
        loop do
          puts "management thread trying to accept..."
          peer = server.accept
          puts "YAY! peer connected!"

          cmd = peer.recvfrom(1)[0].unpack("C")[0].to_i
          case cmd
          when PEER_CONNECT
            puts "connection from peer #{peer.inspect}"
            add_peer peer
          when START
            puts "got start"
            setup_with_siblings
          else
            puts "unknown cmd"
            p cmd
          end
        
        end
      end
    end
  rescue Exception => ex
    puts "client failed to open management port: #{ex}"
  end

end