src/main/java/org/java_websocket/server/WebSocketServer.java
private boolean doSetupSelectorAndServerThread() {
		selectorthread.setName( "WebSocketSelector-" + selectorthread.getId() );
		try {
			server = ServerSocketChannel.open();
			server.configureBlocking( false );
			ServerSocket socket = server.socket();
			socket.setReceiveBufferSize( WebSocketImpl.RCVBUF );
			socket.setReuseAddress( isReuseAddr() );
			socket.bind( address );
			selector = Selector.open();
			server.register( selector, server.validOps() );
			startConnectionLostTimer();
			for( WebSocketWorker ex : decoders ){
				ex.start();
			}
			onStart();
		} catch ( IOException ex ) {
			handleFatal( null, ex );
			return false;
		}
		return true;
	}
private boolean doSetupSelectorAndServerThread() {
		selectorthread.setName( "WebSocketSelector-" + selectorthread.getId() );
		try {
			server = ServerSocketChannel.open();
			server.configureBlocking( false );
			ServerSocket socket = server.socket();
			socket.setReceiveBufferSize( WebSocketImpl.RCVBUF );
			socket.setReuseAddress( isReuseAddr() );
			socket.bind( address );
			selector = Selector.open();
			server.register( selector, server.validOps() );
			startConnectionLostTimer();
			for( WebSocketWorker ex : decoders ){
				ex.start();
			}
			onStart();
		} catch ( IOException ex ) {
			handleFatal( null, ex );
			return false;
		}
		return true;
	}
Setup the selector thread as well as basic server settings
@return true, if everything was successful, false if some error happened