public class WebsocketRequestBuilderDefault extends HttpRequestBuilderBase<WebsocketRequestBuilder> implements WebsocketRequestBuilder
| Modifier and Type | Field and Description |
|---|---|
protected static org.slf4j.Logger |
logger |
| Constructor and Description |
|---|
WebsocketRequestBuilderDefault(String url,
CookieFactory cookieFactory,
HttpResponseFactory spincastHttpResponseFactory,
SpincastHttpClientWithWebsocketUtils spincastHttpClientWithWebsocketUtils,
SpincastHttpClientWithWebsocketConfig spincastHttpClientWithWebsocketConfig)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addCustomCookies(Map<String,List<String>> headers) |
protected void |
addCustomHeaders(Map<String,List<String>> headers) |
protected void |
addHttpAuthHeaders(Map<String,List<String>> headers) |
protected void |
addSslContext(io.undertow.websockets.client.WebSocketClient.ConnectionBuilder connectionBuilder) |
protected void |
addWebsocketRequestHeaders() |
WebsocketClientWriter |
connect(WebsocketClientHandler websocketClientHandler)
Sends the request and establish the WebSocket connection.
|
protected io.undertow.server.DefaultByteBufferPool |
createByteBufferPool() |
protected io.undertow.websockets.client.WebSocketClient.ConnectionBuilder |
createConnectionBuilder(org.xnio.XnioWorker worker,
io.undertow.server.DefaultByteBufferPool bufferPool,
String url) |
protected org.spincast.shaded.org.apache.http.client.methods.HttpRequestBase |
createMethodSpecificHttpRequest(String url)
Creates the HttpRequestBase depending on the HTTP method.
|
protected List<io.undertow.websockets.WebSocketExtension> |
createSupportedExtensions() |
protected List<String> |
createSupportedSubProtocols() |
protected io.undertow.websockets.core.WebSocketChannel |
createWebSocketChannel() |
protected io.undertow.websockets.core.WebSocketChannel |
createWebSocketChannel(org.xnio.XnioWorker worker,
io.undertow.server.DefaultByteBufferPool bufferPool,
String url,
int redirectionNbr) |
protected URI |
createWebsocketUri(String url) |
protected org.xnio.XnioWorker |
createXnioWorker() |
protected int |
getPingsIntervalSeconds() |
protected SpincastHttpClientWithWebsocketConfig |
getSpincastHttpClientWithWebsocketConfig() |
protected SpincastHttpClientWithWebsocketUtils |
getSpincastHttpClientWithWebsocketUtils() |
protected SSLContext |
getSslContext() |
protected ExecutorService |
getThreadExecutorForClientEvents()
The ExecutorService to use to
send events to the client.
|
protected int |
getThreadExecutorForClientEventsThreadNumber()
The maximum number of concurrent threads used when
sending events to the application.
|
protected ThreadFactory |
getThreadExecutorForClientEventsThreadThreadFactory()
The ThreadFactory to use for the Executor that
sends events to the client.
|
protected int |
getThreadExecutorForClientEventsTimeoutAmount()
The timeout amount before cancelling a task when
sending events to the application.
|
protected TimeUnit |
getThreadExecutorForClientEventsTimeoutTimeUnit()
The timeout asdasd before cancelling a task when
sending events to the application.
|
protected WebsocketClientHandler |
getWebsocketClientReader() |
protected io.undertow.websockets.core.WebSocketCallback<Void> |
getWebsocketWriteCallback(WebsocketClientHandler reader) |
protected org.xnio.Xnio |
getXnio() |
WebsocketRequestBuilder |
ping(int seconds)
You can use this to configure the pings that are automatically sent
to the Websocket endpoint every X seconds.
|
HttpResponse |
send()
Sends the request and gets the HTTP response.
|
protected void |
sendClientEventInNewThread(Runnable runnable)
Sends an event to the client in a separated thread.
|
protected void |
sendConnectionClosedAppEvent(WebsocketClientHandler reader) |
protected void |
sendOnBytesMessageClientEvent(byte[] message)
Sends a "Bytes message" event to the app.
|
protected void |
sendOnConnectionClosedMessageClientEvent(int code,
String reason)
Sends a "Connection closed message" event to the app.
|
protected void |
sendOnStringMessageClientEvent(String message)
Sends a "String message" event to the app.
|
protected void |
startSendingPings(SpincastWebsocketClientWriter writer) |
addHeaderValue, addHeaderValues, addHTMLAcceptHeader, addJsonAcceptHeader, addPlainTextAcceptHeader, addXMLAcceptHeader, convertToApacheCookie, convertToApacheCookieTweakName, convertToApacheCookieTweakValue, createHttpClient, createHttpClientBuilder, disableRedirectHandling, disableSslCertificateErrors, getCookieEncoding, getCookieFactory, getCookieStore, getHeaders, getHttpAuthPassword, getHttpAuthUsername, getHttpClient, getHttpClientBuilder, getHttpRequestExecutor, getRequestConfig, getSpincastHttpClientConfig, getSpincastHttpClientUtils, getSpincastHttpResponseFactory, getUrl, isDisableRedirectHandling, isDisableSslCertificateErrors, sendGetRawResponse, setCookie, setCookie, setCookie, setCookies, setCookieStore, setHeaders, setHeaderValues, setHttpAuthCredentials, setHttpClientBuilder, setRequestConfigclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddHeaderValue, addHeaderValues, addHTMLAcceptHeader, addJsonAcceptHeader, addPlainTextAcceptHeader, addXMLAcceptHeader, disableRedirectHandling, disableSslCertificateErrors, setCookie, setCookie, setCookie, setCookies, setHeaders, setHeaderValues, setHttpAuthCredentials, setHttpClientBuilder, setRequestConfigpublic WebsocketRequestBuilderDefault(String url, CookieFactory cookieFactory, HttpResponseFactory spincastHttpResponseFactory, SpincastHttpClientWithWebsocketUtils spincastHttpClientWithWebsocketUtils, SpincastHttpClientWithWebsocketConfig spincastHttpClientWithWebsocketConfig)
protected SpincastHttpClientWithWebsocketConfig getSpincastHttpClientWithWebsocketConfig()
protected SpincastHttpClientWithWebsocketUtils getSpincastHttpClientWithWebsocketUtils()
protected org.spincast.shaded.org.apache.http.client.methods.HttpRequestBase createMethodSpecificHttpRequest(String url)
HttpRequestBuilderBasecreateMethodSpecificHttpRequest in class HttpRequestBuilderBase<WebsocketRequestBuilder>protected int getPingsIntervalSeconds()
protected WebsocketClientHandler getWebsocketClientReader()
public WebsocketRequestBuilder ping(int seconds)
WebsocketRequestBuilderWebsocketClientHandler#onConnectionClosed()
will be called if the connection is closed.
Use a value <= 0 to disable the pings.
The automatic pings and their default interval are also configurable using:
SpincastHttpClientWithWebsocketConfig#isWebsocketAutomaticPingEnabled()
and
SpincastHttpClientWithWebsocketConfig#getWebsocketAutomaticPingIntervalSeconds()
Pings are enabled by default.
ping in interface WebsocketRequestBuilderseconds - the interval in seconds or <= 0 to disable the pings.public HttpResponse send()
HttpRequestBuildersend in interface HttpRequestBuilder<WebsocketRequestBuilder>send in interface WebsocketRequestBuildersend in class HttpRequestBuilderBase<WebsocketRequestBuilder>protected void addWebsocketRequestHeaders()
public WebsocketClientWriter connect(WebsocketClientHandler websocketClientHandler)
WebsocketRequestBuilderconnect in interface WebsocketRequestBuilderwebsocketClientHandler - The handler that is responsible to
handle the various WebSocket events.protected io.undertow.websockets.core.WebSocketCallback<Void> getWebsocketWriteCallback(WebsocketClientHandler reader)
protected void startSendingPings(SpincastWebsocketClientWriter writer)
protected org.xnio.Xnio getXnio()
protected org.xnio.XnioWorker createXnioWorker()
protected SSLContext getSslContext()
protected io.undertow.server.DefaultByteBufferPool createByteBufferPool()
protected io.undertow.websockets.core.WebSocketChannel createWebSocketChannel()
protected io.undertow.websockets.core.WebSocketChannel createWebSocketChannel(org.xnio.XnioWorker worker,
io.undertow.server.DefaultByteBufferPool bufferPool,
String url,
int redirectionNbr)
protected io.undertow.websockets.client.WebSocketClient.ConnectionBuilder createConnectionBuilder(org.xnio.XnioWorker worker,
io.undertow.server.DefaultByteBufferPool bufferPool,
String url)
protected void addSslContext(io.undertow.websockets.client.WebSocketClient.ConnectionBuilder connectionBuilder)
protected List<io.undertow.websockets.WebSocketExtension> createSupportedExtensions()
protected void sendConnectionClosedAppEvent(WebsocketClientHandler reader)
protected void sendOnStringMessageClientEvent(String message)
protected void sendOnBytesMessageClientEvent(byte[] message)
protected void sendOnConnectionClosedMessageClientEvent(int code,
String reason)
protected void sendClientEventInNewThread(Runnable runnable)
protected int getThreadExecutorForClientEventsTimeoutAmount()
protected TimeUnit getThreadExecutorForClientEventsTimeoutTimeUnit()
protected ExecutorService getThreadExecutorForClientEvents()
protected int getThreadExecutorForClientEventsThreadNumber()
protected ThreadFactory getThreadExecutorForClientEventsThreadThreadFactory()
null
to use the default one.Copyright © 2019. All rights reserved.