Class UndertowXhrTransport
java.lang.Object
org.springframework.web.socket.sockjs.client.AbstractXhrTransport
org.springframework.web.socket.sockjs.client.UndertowXhrTransport
- All Implemented Interfaces:
InfoReceiver,Transport,XhrTransport
An XHR transport based on Undertow's
UndertowClient.
Requires Undertow 1.3 or 1.4, including XNIO.
When used for testing purposes (for example, load testing) or for specific use cases
(like HTTPS configuration), a custom OptionMap should be provided:
OptionMap optionMap = OptionMap.builder() .set(Options.WORKER_IO_THREADS, 8) .set(Options.TCP_NODELAY, true) .set(Options.KEEP_ALIVE, true) .set(Options.WORKER_NAME, "SockJSClient") .getMap(); UndertowXhrTransport transport = new UndertowXhrTransport(optionMap);
- Since:
- 4.1.2
- Author:
- Brian Clozel, Rossen Stoyanchev
- See Also:
-
Field Summary
Fields inherited from class org.springframework.web.socket.sockjs.client.AbstractXhrTransport
logger, PRELUDE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidconnectInternal(TransportRequest request, WebSocketHandler handler, URI receiveUrl, HttpHeaders handshakeHeaders, XhrClientSockJsSession session, CompletableFuture<WebSocketSession> connectFuture) protected ResponseEntity<String> executeInfoRequestInternal(URI infoUrl, HttpHeaders headers) protected ResponseEntity<String> executeRequest(URI url, io.undertow.util.HttpString method, HttpHeaders headers, @Nullable String body) protected ResponseEntity<String> executeSendRequestInternal(URI url, HttpHeaders headers, TextMessage message) io.undertow.client.UndertowClientReturn Undertow's native HTTP client.org.xnio.XnioWorkerReturn theXnioWorkerbacking the I/O operations for Undertow's HTTP client.Methods inherited from class org.springframework.web.socket.sockjs.client.AbstractXhrTransport
connectAsync, executeInfoRequest, executeSendRequest, getTransportTypes, isXhrStreamingDisabled, setXhrStreamingDisabled
-
Constructor Details
-
UndertowXhrTransport
- Throws:
IOException
-
UndertowXhrTransport
- Throws:
IOException
-
-
Method Details
-
getHttpClient
public io.undertow.client.UndertowClient getHttpClient()Return Undertow's native HTTP client. -
getWorker
public org.xnio.XnioWorker getWorker()Return theXnioWorkerbacking the I/O operations for Undertow's HTTP client.- See Also:
-
connectInternal
protected void connectInternal(TransportRequest request, WebSocketHandler handler, URI receiveUrl, HttpHeaders handshakeHeaders, XhrClientSockJsSession session, CompletableFuture<WebSocketSession> connectFuture) - Specified by:
connectInternalin classAbstractXhrTransport
-
executeInfoRequestInternal
- Specified by:
executeInfoRequestInternalin classAbstractXhrTransport
-
executeSendRequestInternal
protected ResponseEntity<String> executeSendRequestInternal(URI url, HttpHeaders headers, TextMessage message) - Specified by:
executeSendRequestInternalin classAbstractXhrTransport
-
executeRequest
protected ResponseEntity<String> executeRequest(URI url, io.undertow.util.HttpString method, HttpHeaders headers, @Nullable String body)
-