class Middleman::PreviewServer::TcpPortProber

Probe for tcp ports

This one first tries `try_port` if this is not available use the free port returned by TCPServer.

Public Instance Methods

port(try_port) click to toggle source

Check for port

@param [Integer] try_port

The port to be checked

@return [Integer]

The port
# File lib/middleman-core/preview_server/tcp_port_prober.rb, line 15
def port(try_port)
  server = TCPServer.open(try_port)
  server.close

  try_port
rescue
  server = TCPServer.open(0)
  port = server.addr[1]
  server.close

  port
end