Package org.eclipse.jetty.websocket.api
Interface UpgradeResponse
-
public interface UpgradeResponse
The HTTP Upgrade to WebSocket Response
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addHeader(String name, String value)
Add a header value to the response.String
getAcceptedSubProtocol()
Get the accepted WebSocket protocol.List<ExtensionConfig>
getExtensions()
Get the list of extensions that should be used for the websocket.String
getHeader(String name)
Get a header valueSet<String>
getHeaderNames()
Get the header namesMap<String,List<String>>
getHeaders()
Get the headers mapList<String>
getHeaders(String name)
Get the multi-value header valueint
getStatusCode()
Get the HTTP Response Status CodeString
getStatusReason()
Get the HTTP Response Status Reasonboolean
isSuccess()
Test if upgrade response is successful.void
sendForbidden(String message)
Issue a forbidden upgrade response.void
setAcceptedSubProtocol(String protocol)
Set the accepted WebSocket Protocol.void
setExtensions(List<ExtensionConfig> extensions)
Set the list of extensions that are approved for use with this websocket.void
setHeader(String name, String value)
Set a headervoid
setStatusCode(int statusCode)
Set the HTTP Response status codevoid
setStatusReason(String statusReason)
Set the HTTP Response status reason phrasevoid
setSuccess(boolean success)
Set the success of the upgrade response.
-
-
-
Method Detail
-
addHeader
void addHeader(String name, String value)
Add a header value to the response.- Parameters:
name
- the header namevalue
- the header value
-
getAcceptedSubProtocol
String getAcceptedSubProtocol()
Get the accepted WebSocket protocol.- Returns:
- the accepted WebSocket protocol.
-
getExtensions
List<ExtensionConfig> getExtensions()
Get the list of extensions that should be used for the websocket.- Returns:
- the list of negotiated extensions to use.
-
getHeader
String getHeader(String name)
Get a header value- Parameters:
name
- the header name- Returns:
- the value (null if header doesn't exist)
-
getHeaders
List<String> getHeaders(String name)
Get the multi-value header value- Parameters:
name
- the header name- Returns:
- the list of values (null if header doesn't exist)
-
getStatusCode
int getStatusCode()
Get the HTTP Response Status Code- Returns:
- the status code
-
getStatusReason
String getStatusReason()
Get the HTTP Response Status Reason- Returns:
- the HTTP Response status reason
-
isSuccess
boolean isSuccess()
Test if upgrade response is successful.Merely notes if the response was sent as a WebSocket Upgrade, or was failed (resulting in no upgrade handshake)
- Returns:
- true if upgrade response was generated, false if no upgrade response was generated
-
sendForbidden
void sendForbidden(String message) throws IOException
Issue a forbidden upgrade response.This means that the websocket endpoint was valid, but the conditions to use a WebSocket resulted in a forbidden access.
Use this when the origin or authentication is invalid.
- Parameters:
message
- the short 1 line detail message about the forbidden response- Throws:
IOException
- if unable to send the forbidden
-
setAcceptedSubProtocol
void setAcceptedSubProtocol(String protocol)
Set the accepted WebSocket Protocol.- Parameters:
protocol
- the protocol to list as accepted
-
setExtensions
void setExtensions(List<ExtensionConfig> extensions)
Set the list of extensions that are approved for use with this websocket.Notes:
- Per the spec you cannot add extensions that have not been seen in the
UpgradeRequest
, just remove entries you don't want to use - If this is unused, or a null is passed, then the list negotiation will follow default behavior and use the complete list of extensions that are available in this WebSocket server implementation.
- Parameters:
extensions
- the list of extensions to use.
- Per the spec you cannot add extensions that have not been seen in the
-
setHeader
void setHeader(String name, String value)
Set a headerOverrides previous value of header (if set)
- Parameters:
name
- the header namevalue
- the header value
-
setStatusCode
void setStatusCode(int statusCode)
Set the HTTP Response status code- Parameters:
statusCode
- the status code
-
setStatusReason
void setStatusReason(String statusReason)
Set the HTTP Response status reason phraseNote, not all implementation of UpgradeResponse can support this feature
- Parameters:
statusReason
- the status reason phrase
-
setSuccess
void setSuccess(boolean success)
Set the success of the upgrade response.- Parameters:
success
- true to indicate a response to the upgrade handshake was sent, false to indicate no upgrade response was sent
-
-