Class PingingEndpointConfigurator
- java.lang.Object
-
- javax.websocket.server.ServerEndpointConfig.Configurator
-
- pl.morgwai.base.servlet.guice.scopes.GuiceServerEndpointConfigurator
-
- pl.morgwai.base.servlet.guice.utils.PingingEndpointConfigurator
-
public class PingingEndpointConfigurator extends GuiceServerEndpointConfigurator
Subclass ofGuiceServerEndpointConfigurator
that additionally automatically registers and deregistersEndpoints
to its associatedWebsocketPingerService
. In addition to usage instructions from the super class, annotatedEndpoints
must have a method annotated with @OnClose
and the app-wideWebsocketPingerService
must bestored as a deployment attribute
underfully-qualified name
ofWebsocketPingerService
class.- See Also:
PingingServletContextListener
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
PingingEndpointConfigurator.RttObserver
An interface forEndpoints
to get round-trip time reports upon receiving pongs.
-
Field Summary
-
Fields inherited from class pl.morgwai.base.servlet.guice.scopes.GuiceServerEndpointConfigurator
appDeployment, ctxTracker, injector
-
-
Constructor Summary
Constructors Constructor Description PingingEndpointConfigurator()
PingingEndpointConfigurator(ServletContext appDeployment)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected InvocationHandler
getAdditionalDecorator(Object endpoint)
Subclasses may override this method to further customizeEndpoints
.protected HashSet<Class<? extends Annotation>>
getRequiredEndpointMethodAnnotationTypes()
Returns a set of annotations ofEndpoint
lifecycle methods that are required to be present inEndpoint
classes using this configurator.protected void
initialize(ServletContext appDeployment)
Initializes this instance member fields with references fromappDeployment
attributes
.-
Methods inherited from class pl.morgwai.base.servlet.guice.scopes.GuiceServerEndpointConfigurator
deregisterDeployment, getEndpointInstance, modifyHandshake, registerDeployment
-
Methods inherited from class javax.websocket.server.ServerEndpointConfig.Configurator
checkOrigin, getNegotiatedExtensions, getNegotiatedSubprotocol
-
-
-
-
Constructor Detail
-
PingingEndpointConfigurator
public PingingEndpointConfigurator()
-
PingingEndpointConfigurator
public PingingEndpointConfigurator(ServletContext appDeployment)
-
-
Method Detail
-
initialize
protected void initialize(ServletContext appDeployment)
Description copied from class:GuiceServerEndpointConfigurator
Initializes this instance member fields with references fromappDeployment
attributes
. Called either byGuiceServerEndpointConfigurator(ServletContext)
or byGuiceServerEndpointConfigurator.modifyHandshake(ServerEndpointConfig, HandshakeRequest, HandshakeResponse)
in case of container-created instances forEndpoints
annotated withServerEndpoint
.- Overrides:
initialize
in classGuiceServerEndpointConfigurator
-
getRequiredEndpointMethodAnnotationTypes
protected HashSet<Class<? extends Annotation>> getRequiredEndpointMethodAnnotationTypes()
Description copied from class:GuiceServerEndpointConfigurator
Returns a set of annotations ofEndpoint
lifecycle methods that are required to be present inEndpoint
classes using this configurator. By default a singleton ofOnOpen
. Subclasses may override this method if needed by callingsuper
and adding their required annotations to the obtained set before returning it.- Overrides:
getRequiredEndpointMethodAnnotationTypes
in classGuiceServerEndpointConfigurator
-
getAdditionalDecorator
protected InvocationHandler getAdditionalDecorator(Object endpoint)
Description copied from class:GuiceServerEndpointConfigurator
Subclasses may override this method to further customizeEndpoints
.InvocationHandler.invoke(Object, Method, Object[])
method of the returned handler will be executed withinContainerCallContext
andWebsocketConnectionContext
. By default it returns a handler that simply invokes the given method onendpoint
.- Overrides:
getAdditionalDecorator
in classGuiceServerEndpointConfigurator
-
-