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 WarpSocket
protected final WarpSettings
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Returns the cryptographic cipher suite used by the underlying network connection.void
close()
void
void
void
void
void
void
void
void
didUpgrade
(HttpRequest<?> httpRequest, HttpResponse<?> httpResponse) void
void
doRead()
void
doWrite()
void
feed
(PullRequest<Envelope> pullRequest) void
void
Returns the currentFlowControl
state of the underlying network channel.void
flowControl
(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 aflowModifier
delta.protected void
long
boolean
isClient()
Returnstrue
if the underlying network channel initiated an outgoing connection.boolean
Returnstrue
if the underlying network channel is currently connected.boolean
isSecure()
Returnstrue
if the underlying network transport is encrypted.boolean
isServer()
Returnstrue
if 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.void
Returns 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.void
setWebSocketContext
(WebSocketContext<Envelope, Envelope> context) void
skip()
void
willBecome
(IpSocket socket) void
void
void
write
(WsControlFrame<?, ? extends Envelope> frame)
-
Field Details
-
socket
-
warpSettings
-
context
-
-
Constructor Details
-
WarpWebSocket
-
-
Method Details
-
webSocketContext
- Specified by:
webSocketContext
in interfaceWebSocket<Envelope,
Envelope>
-
setWebSocketContext
- Specified by:
setWebSocketContext
in interfaceWebSocket<Envelope,
Envelope>
-
idleTimeout
public long idleTimeout()- Specified by:
idleTimeout
in interfaceWebSocket<Envelope,
Envelope>
-
doRead
public void doRead() -
didRead
-
doWrite
public void doWrite() -
didWrite
-
didUpgrade
- Specified by:
didUpgrade
in interfaceWebSocket<Envelope,
Envelope>
-
willConnect
public void willConnect()- Specified by:
willConnect
in interfaceWebSocket<Envelope,
Envelope>
-
didConnect
public void didConnect()- Specified by:
didConnect
in interfaceWebSocket<Envelope,
Envelope>
-
willSecure
public void willSecure()- Specified by:
willSecure
in interfaceWebSocket<Envelope,
Envelope>
-
didSecure
public void didSecure() -
willBecome
- Specified by:
willBecome
in interfaceWebSocket<Envelope,
Envelope>
-
didBecome
-
didTimeout
public void didTimeout()- Specified by:
didTimeout
in interfaceWebSocket<Envelope,
Envelope>
-
didDisconnect
public void didDisconnect()- Specified by:
didDisconnect
in interfaceWebSocket<Envelope,
Envelope>
-
didFail
-
isConnected
public boolean isConnected()Description copied from interface:IpContext
Returnstrue
if the underlying network channel is currently connected.- Specified by:
isConnected
in interfaceIpContext
-
isClient
public boolean isClient()Description copied from interface:IpContext
Returnstrue
if the underlying network channel initiated an outgoing connection. -
isServer
public boolean isServer()Description copied from interface:IpContext
Returnstrue
if the underlying network channel accepted an incoming connection. -
isSecure
public boolean isSecure()Description copied from interface:IpContext
Returnstrue
if the underlying network transport is encrypted. -
securityProtocol
Description copied from interface:IpContext
Returns the name of the transport-layer security protocol used by the underlying network connection. Returnsnull
if the underlying network channel is not currently connected, or if the underlying network connection is not secure.- Specified by:
securityProtocol
in interfaceIpContext
-
cipherSuite
Description copied from interface:IpContext
Returns the cryptographic cipher suite used by the underlying network connection. Returnsnull
if the underlying network channel is not currently connected, or if the underlying network connection is not secure.- Specified by:
cipherSuite
in interfaceIpContext
-
localAddress
Description copied from interface:IpContext
Returns the IP address and port of the local endpoint of the underlying network connection. Returnsnull
if the underlying network channel is not currently connected.- Specified by:
localAddress
in interfaceIpContext
-
localPrincipal
Description copied from interface:IpContext
Returns the authenticated identity of the local endpoint of the underlying network connection. Returnsnull
if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
localPrincipal
in interfaceIpContext
-
localCertificates
Description copied from interface:IpContext
Returns the certificate chain used to authenticate the local endpoint of the underlying network connection. Returnsnull
if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
localCertificates
in interfaceIpContext
-
remoteAddress
Description copied from interface:IpContext
Returns the IP address and port of the remote endpoint of the underlying network connection. Returnsnull
if the underlying network channel is not currently connected.- Specified by:
remoteAddress
in interfaceIpContext
-
remotePrincipal
Description copied from interface:IpContext
Returns the authenticated identity of the remote endpoint of the underlying network connection. Returnsnull
if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
remotePrincipal
in interfaceIpContext
-
remoteCertificates
Description copied from interface:IpContext
Returns the certificate chain used to authenticate the remote endpoint of the underlying network connection. Returnsnull
if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.- Specified by:
remoteCertificates
in interfaceIpContext
-
flowControl
Description copied from interface:FlowContext
Returns the currentFlowControl
state of the underlying network channel.- Specified by:
flowControl
in interfaceFlowContext
-
flowControl
Description copied from interface:FlowContext
Enqueues an atomic replacement of the underlying network channel's flow control state with a newflowControl
.- Specified by:
flowControl
in interfaceFlowContext
-
flowControl
Description copied from interface:FlowContext
Enqueues an atomic modification to the underlying network channel's flow control state by applying aflowModifier
delta.- Specified by:
flowControl
in interfaceFlowContext
-
warpSettings
- Specified by:
warpSettings
in interfaceWarpSocketContext
-
feed
- Specified by:
feed
in interfaceWarpSocketContext
-
feed
- Specified by:
feed
in interfaceWarpSocketContext
-
feed
- Specified by:
feed
in interfaceWarpSocketContext
-
push
- Specified by:
push
in interfacePullContext<Envelope>
-
skip
public void skip()- Specified by:
skip
in interfacePullContext<Envelope>
-
generateDemand
protected void generateDemand() -
write
- Specified by:
write
in interfaceWarpSocketContext
-
become
- Specified by:
become
in interfaceWarpSocketContext
-
close
public void close()- Specified by:
close
in interfaceWarpSocketContext
-