spring-graphql/src/testFixtures/java/org/springframework/graphql/server/TestWebSocketConnection.java
/**
	 * Starts client and server session handling, and if either side errors or
	 * completes, close its session with either {@link CloseStatus#NORMAL} or
	 * {@link CloseStatus#PROTOCOL_ERROR} respectively.
	 * @param clientHandler the client session handler
	 * @param serverHandler the server session handler
	 * @return {@code Mono} that completes when either client or server
	 * session handling completes or when either is closed
	 */
Starts client and server session handling, and if either side errors or
completes, close its session with either  CloseStatus#NORMAL or
CloseStatus#PROTOCOL_ERROR respectively.
@param clientHandler the client session handler
@param serverHandler the server session handler
@return  Mono that completes when either client or server
session handling completes or when either is closed
Starts client and server session handling and if either side errors or completes close its session with either CloseStatus#NORMAL or CloseStatus#PROTOCOL_ERROR respectively . @param clientHandler the client session handler @param serverHandler the server session handler @return Mono that completes when either client or server session handling completes or when either is closed
Mono<Void> connect(WebSocketHandler clientHandler, WebSocketHandler serverHandler) {
		Mono<Void> serverMono = invokeHandler(serverHandler, this.serverSession, false);
		Mono<Void> clientMono = invokeHandler(clientHandler, this.clientSession, true);
		Mono<Void> serverStatusMono = this.serverSession.closeStatus().then();
		Mono<Void> clientStatusMono = this.clientSession.closeStatus().then();
		return Mono.zip(serverMono, clientMono, serverStatusMono, clientStatusMono).then();
	}
Mono < Void > connect ( WebSocketHandler clientHandler , WebSocketHandler serverHandler ) { Mono < Void > serverMono = invokeHandler ( serverHandler , this . serverSession , false ) ; Mono < Void > clientMono = invokeHandler ( clientHandler , this . clientSession , true ) ; Mono < Void > serverStatusMono = this . serverSession . closeStatus ( ) . then ( ) ; Mono < Void > clientStatusMono = this . clientSession . closeStatus ( ) . then ( ) ; return Mono . zip ( serverMono , clientMono , serverStatusMono , clientStatusMono ) . then ( ) ; }
Starts client and server session handling, and if either side errors or
 completes, close its session with either {@link CloseStatus#NORMAL} or
 {@link CloseStatus#PROTOCOL_ERROR} respectively.
Starts client and server session handling and if either side errors or completes close its session with either { @link CloseStatus#NORMAL } or { @link CloseStatus#PROTOCOL_ERROR } respectively .