Class WebSocketUpgradeRequest.ClientUpgradeRequestFacade
- java.lang.Object
-
- org.eclipse.jetty.websocket.client.WebSocketUpgradeRequest.ClientUpgradeRequestFacade
-
- All Implemented Interfaces:
UpgradeRequest
- Enclosing class:
- WebSocketUpgradeRequest
private class WebSocketUpgradeRequest.ClientUpgradeRequestFacade extends java.lang.Object implements UpgradeRequest
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<ExtensionConfig>extensionsprivate java.lang.Objectsessionprivate java.util.List<java.lang.String>subProtocols
-
Constructor Summary
Constructors Constructor Description ClientUpgradeRequestFacade()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExtensions(java.lang.String... configs)Add WebSocket Extension Configuration(s) to requestvoidaddExtensions(ExtensionConfig... configs)Add WebSocket Extension Configuration(s) to Upgrade Request.voidclearHeaders()Remove all headers from request.java.util.List<java.net.HttpCookie>getCookies()Get the list of Cookies on the Upgrade requestjava.util.List<ExtensionConfig>getExtensions()Get the list of WebSocket Extension Configurations for this Upgrade Request.java.lang.StringgetHeader(java.lang.String name)Get a specific Header value from Upgrade RequestintgetHeaderInt(java.lang.String name)Get the specific Header value, as anint, from the Upgrade Request.java.util.Map<java.lang.String,java.util.List<java.lang.String>>getHeaders()Get the headers as a Map of keys to value lists.java.util.List<java.lang.String>getHeaders(java.lang.String name)Get the specific header values (for multi-value headers)java.lang.StringgetHost()The host of the Upgrade Request URIjava.lang.StringgetHttpVersion()The HTTP version used for this Upgrade Requestjava.lang.StringgetMethod()The HTTP method for this Upgrade Request.java.lang.StringgetOrigin()The WebSocket Origin of this Upgrade Requestjava.util.Map<java.lang.String,java.util.List<java.lang.String>>getParameterMap()Returns a map of the query parameters of the request.java.lang.StringgetProtocolVersion()Get the WebSocket Protocol Versionjava.lang.StringgetQueryString()Get the Query String of the request URI.java.net.URIgetRequestURI()Get the Request URIjava.lang.ObjectgetSession()Access the Servlet HTTP Session (if present)java.util.List<java.lang.String>getSubProtocols()Get the list of offered WebSocket sub-protocols.java.security.PrincipalgetUserPrincipal()Get the User Principal for this request.booleanhasSubProtocol(java.lang.String test)Test if a specific sub-protocol is offeredvoidinit(ClientUpgradeRequest request)booleanisOrigin(java.lang.String test)Test if supplied Origin is the same as the RequestbooleanisSecure()Test if connection is secure.voidsetCookies(java.util.List<java.net.HttpCookie> cookies)Set the list of Cookies on the requestvoidsetExtensions(java.util.List<ExtensionConfig> configs)Set the list of WebSocket Extension configurations on the request.voidsetHeader(java.lang.String name, java.lang.String value)Set a specific header valuevoidsetHeader(java.lang.String name, java.util.List<java.lang.String> values)Set a specific header with multi-value fieldvoidsetHeaders(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers)Sets multiple headers on the request.voidsetHttpVersion(java.lang.String httpVersion)Set the HTTP Version to use.voidsetMethod(java.lang.String method)Set the HTTP method to use.voidsetRequestURI(java.net.URI uri)Set the Request URI to use for this request.voidsetSession(java.lang.Object session)Set the Session associated with this request.voidsetSubProtocols(java.lang.String... protocols)Set the offered WebSocket Sub-Protocol list.voidsetSubProtocols(java.util.List<java.lang.String> protocols)Set the offered WebSocket Sub-Protocol list.private voidupdateExtensionHeader()
-
-
-
Field Detail
-
extensions
private java.util.List<ExtensionConfig> extensions
-
subProtocols
private java.util.List<java.lang.String> subProtocols
-
session
private java.lang.Object session
-
-
Method Detail
-
init
public void init(ClientUpgradeRequest request)
-
getExtensions
public java.util.List<ExtensionConfig> getExtensions()
Description copied from interface:UpgradeRequestGet the list of WebSocket Extension Configurations for this Upgrade Request.This is merely the list of requested Extensions to use, see
UpgradeResponse.getExtensions()for what was negotiated- Specified by:
getExtensionsin interfaceUpgradeRequest- Returns:
- the list of Extension configurations (in the order they were specified)
-
getSubProtocols
public java.util.List<java.lang.String> getSubProtocols()
Description copied from interface:UpgradeRequestGet the list of offered WebSocket sub-protocols.- Specified by:
getSubProtocolsin interfaceUpgradeRequest- Returns:
- the list of offered sub-protocols
-
addExtensions
public void addExtensions(ExtensionConfig... configs)
Description copied from interface:UpgradeRequestAdd WebSocket Extension Configuration(s) to Upgrade Request.This is merely the list of requested Extensions to use, see
UpgradeResponse.getExtensions()for what was negotiated- Specified by:
addExtensionsin interfaceUpgradeRequest- Parameters:
configs- the configuration(s) to add
-
addExtensions
public void addExtensions(java.lang.String... configs)
Description copied from interface:UpgradeRequestAdd WebSocket Extension Configuration(s) to requestThis is merely the list of requested Extensions to use, see
UpgradeResponse.getExtensions()for what was negotiated- Specified by:
addExtensionsin interfaceUpgradeRequest- Parameters:
configs- the configuration(s) to add
-
clearHeaders
public void clearHeaders()
Description copied from interface:UpgradeRequestRemove all headers from request.- Specified by:
clearHeadersin interfaceUpgradeRequest
-
getHeader
public java.lang.String getHeader(java.lang.String name)
Description copied from interface:UpgradeRequestGet a specific Header value from Upgrade Request- Specified by:
getHeaderin interfaceUpgradeRequest- Parameters:
name- the name of the header- Returns:
- the value of the header (null if header does not exist)
-
getHeaderInt
public int getHeaderInt(java.lang.String name)
Description copied from interface:UpgradeRequestGet the specific Header value, as anint, from the Upgrade Request.- Specified by:
getHeaderIntin interfaceUpgradeRequest- Parameters:
name- the name of the header- Returns:
- the value of the header as an
int(-1 if header does not exist)
-
getHeaders
public java.util.List<java.lang.String> getHeaders(java.lang.String name)
Description copied from interface:UpgradeRequestGet the specific header values (for multi-value headers)- Specified by:
getHeadersin interfaceUpgradeRequest- Parameters:
name- the header name- Returns:
- the value list (null if no header exists)
-
getHttpVersion
public java.lang.String getHttpVersion()
Description copied from interface:UpgradeRequestThe HTTP version used for this Upgrade RequestAs of RFC6455 (December 2011) this is always
HTTP/1.1- Specified by:
getHttpVersionin interfaceUpgradeRequest- Returns:
- the HTTP Version used
-
getOrigin
public java.lang.String getOrigin()
Description copied from interface:UpgradeRequestThe WebSocket Origin of this Upgrade RequestSee RFC6455: Section 10.2 for details.
Equivalent to
UpgradeRequest.getHeader(String)passed the "Origin" header.- Specified by:
getOriginin interfaceUpgradeRequest- Returns:
- the Origin header
-
getParameterMap
public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParameterMap()
Description copied from interface:UpgradeRequestReturns a map of the query parameters of the request.- Specified by:
getParameterMapin interfaceUpgradeRequest- Returns:
- a unmodifiable map of query parameters of the request.
-
getProtocolVersion
public java.lang.String getProtocolVersion()
Description copied from interface:UpgradeRequestGet the WebSocket Protocol VersionAs of RFC6455, Jetty only supports version
13- Specified by:
getProtocolVersionin interfaceUpgradeRequest- Returns:
- the WebSocket protocol version
-
getQueryString
public java.lang.String getQueryString()
Description copied from interface:UpgradeRequestGet the Query String of the request URI.- Specified by:
getQueryStringin interfaceUpgradeRequest- Returns:
- the request uri query string
-
getRequestURI
public java.net.URI getRequestURI()
Description copied from interface:UpgradeRequestGet the Request URI- Specified by:
getRequestURIin interfaceUpgradeRequest- Returns:
- the request URI
-
getSession
public java.lang.Object getSession()
Description copied from interface:UpgradeRequestAccess the Servlet HTTP Session (if present)Note: Never present on a Client UpgradeRequest.
- Specified by:
getSessionin interfaceUpgradeRequest- Returns:
- the Servlet HTTPSession on server side UpgradeRequests
-
getUserPrincipal
public java.security.Principal getUserPrincipal()
Description copied from interface:UpgradeRequestGet the User Principal for this request.Only applicable when using UpgradeRequest from server side.
- Specified by:
getUserPrincipalin interfaceUpgradeRequest- Returns:
- the user principal
-
hasSubProtocol
public boolean hasSubProtocol(java.lang.String test)
Description copied from interface:UpgradeRequestTest if a specific sub-protocol is offered- Specified by:
hasSubProtocolin interfaceUpgradeRequest- Parameters:
test- the sub-protocol to test for- Returns:
- true if sub-protocol exists on request
-
isOrigin
public boolean isOrigin(java.lang.String test)
Description copied from interface:UpgradeRequestTest if supplied Origin is the same as the Request- Specified by:
isOriginin interfaceUpgradeRequest- Parameters:
test- the supplied origin- Returns:
- true if the supplied origin matches the request origin
-
isSecure
public boolean isSecure()
Description copied from interface:UpgradeRequestTest if connection is secure.- Specified by:
isSecurein interfaceUpgradeRequest- Returns:
- true if connection is secure.
-
setCookies
public void setCookies(java.util.List<java.net.HttpCookie> cookies)
Description copied from interface:UpgradeRequestSet the list of Cookies on the request- Specified by:
setCookiesin interfaceUpgradeRequest- Parameters:
cookies- the cookies to use
-
setExtensions
public void setExtensions(java.util.List<ExtensionConfig> configs)
Description copied from interface:UpgradeRequestSet the list of WebSocket Extension configurations on the request.- Specified by:
setExtensionsin interfaceUpgradeRequest- Parameters:
configs- the list of extension configurations
-
updateExtensionHeader
private void updateExtensionHeader()
-
setHeader
public void setHeader(java.lang.String name, java.util.List<java.lang.String> values)Description copied from interface:UpgradeRequestSet a specific header with multi-value fieldOverrides any previous value for this named header
- Specified by:
setHeaderin interfaceUpgradeRequest- Parameters:
name- the name of the headervalues- the multi-value field
-
setHeader
public void setHeader(java.lang.String name, java.lang.String value)Description copied from interface:UpgradeRequestSet a specific header valueOverrides any previous value for this named header
- Specified by:
setHeaderin interfaceUpgradeRequest- Parameters:
name- the header to setvalue- the value to set it to
-
setHeaders
public void setHeaders(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers)
Description copied from interface:UpgradeRequestSets multiple headers on the request.Only sets those headers provided, does not remove headers that exist on request and are not provided in the parameter for this method.
Convenience method vs calling
UpgradeRequest.setHeader(String, List)multiple times.- Specified by:
setHeadersin interfaceUpgradeRequest- Parameters:
headers- the headers to set
-
setHttpVersion
public void setHttpVersion(java.lang.String httpVersion)
Description copied from interface:UpgradeRequestSet the HTTP Version to use.As of RFC6455 (December 2011) this should always be
HTTP/1.1- Specified by:
setHttpVersionin interfaceUpgradeRequest- Parameters:
httpVersion- the HTTP version to use.
-
setMethod
public void setMethod(java.lang.String method)
Description copied from interface:UpgradeRequestSet the HTTP method to use.As of RFC6455 (December 2011) this is always
GET- Specified by:
setMethodin interfaceUpgradeRequest- Parameters:
method- the HTTP method to use.
-
setRequestURI
public void setRequestURI(java.net.URI uri)
Description copied from interface:UpgradeRequestSet the Request URI to use for this request.Must be an absolute URI with scheme
'ws'or'wss'- Specified by:
setRequestURIin interfaceUpgradeRequest- Parameters:
uri- the Request URI
-
setSession
public void setSession(java.lang.Object session)
Description copied from interface:UpgradeRequestSet the Session associated with this request.Typically used to associate the Servlet HttpSession object.
- Specified by:
setSessionin interfaceUpgradeRequest- Parameters:
session- the session object to associate with this request
-
setSubProtocols
public void setSubProtocols(java.util.List<java.lang.String> protocols)
Description copied from interface:UpgradeRequestSet the offered WebSocket Sub-Protocol list.- Specified by:
setSubProtocolsin interfaceUpgradeRequest- Parameters:
protocols- the offered sub-protocol list
-
setSubProtocols
public void setSubProtocols(java.lang.String... protocols)
Description copied from interface:UpgradeRequestSet the offered WebSocket Sub-Protocol list.- Specified by:
setSubProtocolsin interfaceUpgradeRequest- Parameters:
protocols- the offered sub-protocol list
-
getCookies
public java.util.List<java.net.HttpCookie> getCookies()
Description copied from interface:UpgradeRequestGet the list of Cookies on the Upgrade request- Specified by:
getCookiesin interfaceUpgradeRequest- Returns:
- the list of Cookies
-
getHeaders
public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getHeaders()
Description copied from interface:UpgradeRequestGet the headers as a Map of keys to value lists.- Specified by:
getHeadersin interfaceUpgradeRequest- Returns:
- the headers
-
getHost
public java.lang.String getHost()
Description copied from interface:UpgradeRequestThe host of the Upgrade Request URI- Specified by:
getHostin interfaceUpgradeRequest- Returns:
- host of the request URI
-
getMethod
public java.lang.String getMethod()
Description copied from interface:UpgradeRequestThe HTTP method for this Upgrade Request.As of RFC6455 (December 2011) this is always
GET- Specified by:
getMethodin interfaceUpgradeRequest- Returns:
- the HTTP method used
-
-