public class WebsocketRequestBuilder extends SpincastHttpRequestBuilderBase<IWebsocketRequestBuilder> implements IWebsocketRequestBuilder
| Modifier and Type | Field and Description |
|---|---|
protected org.slf4j.Logger |
logger |
| Constructor and Description |
|---|
WebsocketRequestBuilder(String url,
ICookieFactory cookieFactory,
IHttpResponseFactory spincastHttpResponseFactory,
ISpincastHttpClientWithWebsocketUtils spincastHttpClientWithWebsocketUtils,
ISpincastHttpClientWithWebsocketConfig 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() |
IWebsocketClientWriter |
connect(IWebsocketClientHandler 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 |
getMaxRedirectionNbr()
The maximum number of allowed redirections.
|
protected int |
getPingsIntervalSeconds() |
protected ISpincastHttpClientWithWebsocketConfig |
getSpincastHttpClientWithWebsocketConfig() |
protected ISpincastHttpClientWithWebsocketUtils |
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 IWebsocketClientHandler |
getWebsocketClientReader() |
protected io.undertow.websockets.core.WebSocketCallback<Void> |
getWebsocketWriteCallback(IWebsocketClientHandler reader) |
protected org.xnio.Xnio |
getXnio() |
IWebsocketRequestBuilder |
ping(int seconds)
You can use this to configure the pings that are automatically sent
to the Websocket endpoint every X seconds.
|
IHttpResponse |
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(IWebsocketClientHandler 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(ISpincastWebsocketClientWriter writer) |
addCookie, addCookie, addCookies, addHeaderValue, addHeaderValues, addHTMLAcceptHeader, addJsonAcceptHeader, addPlainTextAcceptHeader, addXMLAcceptHeader, convertToApacheCookie, createHttpClient, createHttpClientBuilder, disableSslCertificateErrors, getCookieEncoding, getCookieFactory, getCookieStore, getHeaders, getHttpAuthPassword, getHttpAuthUsername, getHttpClient, getHttpClientBuilder, getHttpRequestExecutor, getRequestConfig, getSpincastHttpClientConfig, getSpincastHttpClientUtils, getSpincastHttpResponseFactory, getUrl, isDisableSslCertificateErrors, sendGetRawResponse, setCookieStore, setHeaders, setHeaderValues, setHttpAuthCredentials, setHttpClientBuilder, setRequestConfigclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddCookie, addCookie, addCookies, addHeaderValue, addHeaderValues, addHTMLAcceptHeader, addJsonAcceptHeader, addPlainTextAcceptHeader, addXMLAcceptHeader, disableSslCertificateErrors, setHeaders, setHeaderValues, setHttpAuthCredentials, setHttpClientBuilder, setRequestConfigpublic WebsocketRequestBuilder(String url, ICookieFactory cookieFactory, IHttpResponseFactory spincastHttpResponseFactory, ISpincastHttpClientWithWebsocketUtils spincastHttpClientWithWebsocketUtils, ISpincastHttpClientWithWebsocketConfig spincastHttpClientWithWebsocketConfig)
protected ISpincastHttpClientWithWebsocketConfig getSpincastHttpClientWithWebsocketConfig()
protected ISpincastHttpClientWithWebsocketUtils getSpincastHttpClientWithWebsocketUtils()
protected org.spincast.shaded.org.apache.http.client.methods.HttpRequestBase createMethodSpecificHttpRequest(String url)
SpincastHttpRequestBuilderBasecreateMethodSpecificHttpRequest in class SpincastHttpRequestBuilderBase<IWebsocketRequestBuilder>protected int getPingsIntervalSeconds()
protected IWebsocketClientHandler getWebsocketClientReader()
public IWebsocketRequestBuilder ping(int seconds)
IWebsocketRequestBuilderIWebsocketClientHandler#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:
ISpincastHttpClientWithWebsocketConfig#isWebsocketAutomaticPingEnabled()
and
ISpincastHttpClientWithWebsocketConfig#getWebsocketAutomaticPingIntervalSeconds()
Pings are enabled by default.
ping in interface IWebsocketRequestBuilderseconds - the interval in seconds or <= 0 to disable the pings.public IHttpResponse send()
IHttpRequestBuildersend in interface IHttpRequestBuilder<IWebsocketRequestBuilder>send in interface IWebsocketRequestBuildersend in class SpincastHttpRequestBuilderBase<IWebsocketRequestBuilder>protected void addWebsocketRequestHeaders()
public IWebsocketClientWriter connect(IWebsocketClientHandler websocketClientHandler)
IWebsocketRequestBuilderconnect in interface IWebsocketRequestBuilderwebsocketClientHandler - The handler that is responsible to
handle the various WebSocket events.protected io.undertow.websockets.core.WebSocketCallback<Void> getWebsocketWriteCallback(IWebsocketClientHandler reader)
protected void startSendingPings(ISpincastWebsocketClientWriter 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 int getMaxRedirectionNbr()
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(IWebsocketClientHandler 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 © 2016. All rights reserved.