## Uses of Interface
io.undertow.websockets.spi.WebSocketHttpExchange

Packages that use WebSocketHttpExchange
io.undertow.websockets
io.undertow.websockets.core.protocol
io.undertow.websockets.core.protocol.version07
io.undertow.websockets.core.protocol.version08
io.undertow.websockets.core.protocol.version13
io.undertow.websockets.spi

### Uses of WebSocketHttpExchange in io.undertow.websockets

Methods in io.undertow.websockets with parameters of type WebSocketHttpExchange
`void` WebSocketConnectionCallback.`onConnect(WebSocketHttpExchange exchange, WebSocketChannel channel)` Is called once the WebSocket connection is established, which means the handshake was successful.

### Uses of WebSocketHttpExchange in io.undertow.websockets.core.protocol

Methods in io.undertow.websockets.core.protocol with parameters of type WebSocketHttpExchange
`abstract WebSocketChannel` Handshake.`createChannel(WebSocketHttpExchange exchange, org.xnio.StreamConnection channel, ByteBufferPool pool)` Create the `WebSocketChannel` from the `WebSocketHttpExchange`
`protected static String` Handshake.`getWebSocketLocation(WebSocketHttpExchange exchange)` Return the full url of the websocket location of the given `WebSocketHttpExchange`
`void` Handshake.`handshake(WebSocketHttpExchange exchange)` Issue the WebSocket upgrade
`protected abstract void` Handshake.`handshakeInternal(WebSocketHttpExchange exchange)`
`protected List<ExtensionFunction>` Handshake.`initExtensions(WebSocketHttpExchange exchange)` Create the `ExtensionFunction` list associated with the negotiated extensions defined in the exchange's response.
`abstract boolean` Handshake.`matches(WebSocketHttpExchange exchange)` Return `true` if this implementation can be used to issue a handshake.
`protected void` Handshake.`performUpgrade(WebSocketHttpExchange exchange)` Perform the upgrade using no payload
`protected void` Handshake.`performUpgrade(WebSocketHttpExchange exchange, byte[] data)` convenience method to perform the upgrade
`protected void` Handshake.`selectExtensions(WebSocketHttpExchange exchange)`
`protected void` Handshake.`selectSubprotocol(WebSocketHttpExchange exchange)` Selects the first matching supported sub protocol and add it the the headers of the exchange.
`protected void` Handshake.`upgradeChannel(WebSocketHttpExchange exchange, byte[] data)`

### Uses of WebSocketHttpExchange in io.undertow.websockets.core.protocol.version07

Methods in io.undertow.websockets.core.protocol.version07 with parameters of type WebSocketHttpExchange
`WebSocketChannel` Hybi07Handshake.`createChannel(WebSocketHttpExchange exchange, org.xnio.StreamConnection channel, ByteBufferPool pool)`
`protected void` Hybi07Handshake.`handshakeInternal(WebSocketHttpExchange exchange)`
`boolean` Hybi07Handshake.`matches(WebSocketHttpExchange exchange)`

### Uses of WebSocketHttpExchange in io.undertow.websockets.core.protocol.version08

Methods in io.undertow.websockets.core.protocol.version08 with parameters of type WebSocketHttpExchange
`WebSocketChannel` Hybi08Handshake.`createChannel(WebSocketHttpExchange exchange, org.xnio.StreamConnection channel, ByteBufferPool pool)`

### Uses of WebSocketHttpExchange in io.undertow.websockets.core.protocol.version13

Methods in io.undertow.websockets.core.protocol.version13 with parameters of type WebSocketHttpExchange
`WebSocketChannel` Hybi13Handshake.`createChannel(WebSocketHttpExchange exchange, org.xnio.StreamConnection channel, ByteBufferPool pool)`
`protected void` Hybi13Handshake.`handshakeInternal(WebSocketHttpExchange exchange)`

### Uses of WebSocketHttpExchange in io.undertow.websockets.spi

Classes in io.undertow.websockets.spi that implement WebSocketHttpExchange
`class` `AsyncWebSocketHttpServerExchange`
`class` `BlockingWebSocketHttpServerExchange`