java.lang.Object
swim.io.warp.WarpWebSocket
- All Implemented Interfaces:
PullContext<Envelope>,StayContext,FlowContext,IpContext,WarpSocketContext,WebSocket<Envelope,Envelope>
public class WarpWebSocket
extends Object
implements WebSocket<Envelope,Envelope>, WarpSocketContext, PullContext<Envelope>, StayContext
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected WebSocketContext<Envelope,Envelope> protected final WarpSocketprotected final WarpSettings -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidReturns the cryptographic cipher suite used by the underlying network connection.voidclose()voidvoidvoidvoidvoidvoidvoidvoiddidUpgrade(HttpRequest<?> httpRequest, HttpResponse<?> httpResponse) voidvoiddoRead()voiddoWrite()voidfeed(PullRequest<Envelope> pullRequest) voidvoidReturns the currentFlowControlstate of the underlying network channel.voidflowControl(FlowControl flowControl) Enqueues an atomic replacement of the underlying network channel's flow control state with a newflowControl.flowControl(FlowModifier flowModifier) Enqueues an atomic modification to the underlying network channel's flow control state by applying aflowModifierdelta.protected voidlongbooleanisClient()Returnstrueif the underlying network channel initiated an outgoing connection.booleanReturnstrueif the underlying network channel is currently connected.booleanisSecure()Returnstrueif the underlying network transport is encrypted.booleanisServer()Returnstrueif the underlying network channel accepted an incoming connection.Returns the IP address and port of the local endpoint of the underlying network connection.Returns the certificate chain used to authenticate the local endpoint of the underlying network connection.Returns the authenticated identity of the local endpoint of the underlying network connection.voidReturns the IP address and port of the remote endpoint of the underlying network connection.Returns the certificate chain used to authenticate the remote endpoint of the underlying network connection.Returns the authenticated identity of the remote endpoint of the underlying network connection.Returns the name of the transport-layer security protocol used by the underlying network connection.voidsetWebSocketContext(WebSocketContext<Envelope, Envelope> context) voidskip()voidwillBecome(IpSocket socket) voidvoidvoidwrite(WsControlFrame<?, ? extends Envelope> frame)
-
Field Details
-
socket
-
warpSettings
-
context
-
-
Constructor Details
-
WarpWebSocket
-
-
Method Details
-
webSocketContext
- Specified by:
webSocketContextin interfaceWebSocket<Envelope,Envelope>
-
setWebSocketContext
- Specified by:
setWebSocketContextin interfaceWebSocket<Envelope,Envelope>
-
idleTimeout
public long idleTimeout()- Specified by:
idleTimeoutin interfaceWebSocket<Envelope,Envelope>
-
doRead
public void doRead() -
didRead
-
doWrite
public void doWrite() -
didWrite
-
didUpgrade
- Specified by:
didUpgradein interfaceWebSocket<Envelope,Envelope>
-
willConnect
public void willConnect()- Specified by:
willConnectin interfaceWebSocket<Envelope,Envelope>
-
didConnect
public void didConnect()- Specified by:
didConnectin interfaceWebSocket<Envelope,Envelope>
-
willSecure
public void willSecure()- Specified by:
willSecurein interfaceWebSocket<Envelope,Envelope>
-
didSecure
public void didSecure() -
willBecome
- Specified by:
willBecomein interfaceWebSocket<Envelope,Envelope>
-
didBecome
-
didTimeout
public void didTimeout()- Specified by:
didTimeoutin interfaceWebSocket<Envelope,Envelope>
-
didDisconnect
public void didDisconnect()- Specified by:
didDisconnectin interfaceWebSocket<Envelope,Envelope>
-
didFail
-
isConnected
public boolean isConnected()Description copied from interface:IpContextReturnstrueif the underlying network channel is currently connected.- Specified by:
isConnectedin interfaceIpContext
-
isClient
public boolean isClient()Description copied from interface:IpContextReturnstrueif the underlying network channel initiated an outgoing connection. -
isServer
public boolean isServer()Description copied from interface:IpContextReturnstrueif the underlying network channel accepted an incoming connection. -
isSecure
public boolean isSecure()Description copied from interface:IpContextReturnstrueif the underlying network transport is encrypted. -
securityProtocol
Description copied from interface:IpContextReturns the name of the transport-layer security protocol used by the underlying network connection. Returnsnullif the underlying network channel is not currently connected, or if the underlying network connection is not secure.- Specified by:
securityProtocolin interfaceIpContext
-
cipherSuite
Description copied from interface:IpContextReturns the cryptographic cipher suite used by the underlying network connection. Returnsnullif the underlying network channel is not currently connected, or if the underlying network connection is not secure.- Specified by:
cipherSuitein interfaceIpContext
-
localAddress
Description copied from interface:IpContextReturns the IP address and port of the local endpoint of the underlying network connection. Returnsnullif the underlying network channel is not currently connected.- Specified by:
localAddressin interfaceIpContext
-
localPrincipal
Description copied from interface:IpContextReturns the authenticated identity of the local endpoint of the underlying network connection. Returnsnullif the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
localPrincipalin interfaceIpContext
-
localCertificates
Description copied from interface:IpContextReturns the certificate chain used to authenticate the local endpoint of the underlying network connection. Returnsnullif the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
localCertificatesin interfaceIpContext
-
remoteAddress
Description copied from interface:IpContextReturns the IP address and port of the remote endpoint of the underlying network connection. Returnsnullif the underlying network channel is not currently connected.- Specified by:
remoteAddressin interfaceIpContext
-
remotePrincipal
Description copied from interface:IpContextReturns the authenticated identity of the remote endpoint of the underlying network connection. Returnsnullif the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
remotePrincipalin interfaceIpContext
-
remoteCertificates
Description copied from interface:IpContextReturns the certificate chain used to authenticate the remote endpoint of the underlying network connection. Returnsnullif the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
remoteCertificatesin interfaceIpContext
-
flowControl
Description copied from interface:FlowContextReturns the currentFlowControlstate of the underlying network channel.- Specified by:
flowControlin interfaceFlowContext
-
flowControl
Description copied from interface:FlowContextEnqueues an atomic replacement of the underlying network channel's flow control state with a newflowControl.- Specified by:
flowControlin interfaceFlowContext
-
flowControl
Description copied from interface:FlowContextEnqueues an atomic modification to the underlying network channel's flow control state by applying aflowModifierdelta.- Specified by:
flowControlin interfaceFlowContext
-
warpSettings
- Specified by:
warpSettingsin interfaceWarpSocketContext
-
feed
- Specified by:
feedin interfaceWarpSocketContext
-
feed
- Specified by:
feedin interfaceWarpSocketContext
-
feed
- Specified by:
feedin interfaceWarpSocketContext
-
push
- Specified by:
pushin interfacePullContext<Envelope>
-
skip
public void skip()- Specified by:
skipin interfacePullContext<Envelope>
-
generateDemand
protected void generateDemand() -
write
- Specified by:
writein interfaceWarpSocketContext
-
become
- Specified by:
becomein interfaceWarpSocketContext
-
close
public void close()- Specified by:
closein interfaceWarpSocketContext
-