# Hierarchy For All Packages

Package Hierarchies:

- org.springframework.web.socket,
- org.springframework.web.socket.adapter,
- org.springframework.web.socket.adapter.jetty,
- org.springframework.web.socket.adapter.standard,
- org.springframework.web.socket.client,
- org.springframework.web.socket.client.jetty,
- org.springframework.web.socket.client.standard,
- org.springframework.web.socket.config,
- org.springframework.web.socket.config.annotation,
- org.springframework.web.socket.handler,
- org.springframework.web.socket.messaging,
- org.springframework.web.socket.server,
- org.springframework.web.socket.server.jetty,
- org.springframework.web.socket.server.standard,
- org.springframework.web.socket.server.support,
- org.springframework.web.socket.sockjs,
- org.springframework.web.socket.sockjs.client,
- org.springframework.web.socket.sockjs.frame,
- org.springframework.web.socket.sockjs.support,
- org.springframework.web.socket.sockjs.transport,
- org.springframework.web.socket.sockjs.transport.handler,
- org.springframework.web.socket.sockjs.transport.session

## Class Hierarchy

- java.lang.Object
  - org.springframework.web.socket.sockjs.client.AbstractClientSockJsSession (implements org.springframework.web.socket.WebSocketSession)
    - org.springframework.web.socket.sockjs.client.WebSocketClientSockJsSession (implements org.springframework.web.socket.adapter.NativeWebSocketSession)
    - org.springframework.web.socket.sockjs.client.XhrClientSockJsSession
  - org.springframework.web.socket.server.support.AbstractHandshakeHandler (implements org.springframework.web.socket.server.HandshakeHandler, org.springframework.context.Lifecycle)
    - org.springframework.web.socket.server.support.DefaultHandshakeHandler (implements org.springframework.web.context.ServletContextAware)
  - org.springframework.messaging.simp.config.AbstractMessageBrokerConfiguration (implements org.springframework.context.ApplicationContextAware)
    - org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurationSupport
      - org.springframework.web.socket.config.annotation.DelegatingWebSocketMessageBrokerConfiguration
  - org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler<T> (implements org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.InitializingBean, org.springframework.messaging.MessageHandler)
    - org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler (implements org.springframework.context.EmbeddedValueResolverAware, org.springframework.context.SmartLifecycle)
      - org.springframework.web.socket.messaging.WebSocketAnnotationMethodMessageHandler
  - org.springframework.web.socket.sockjs.frame.AbstractSockJsMessageCodec (implements org.springframework.web.socket.sockjs.frame.SockJsMessageCodec)
    - org.springframework.web.socket.sockjs.frame.Jackson2SockJsMessageCodec
  - org.springframework.web.socket.sockjs.support.AbstractSockJsService (implements org.springframework.web.cors.CorsConfigurationSource, org.springframework.web.socket.sockjs.SockJsService)
    - org.springframework.web.socket.sockjs.transport.TransportHandlingSockJsService (implements org.springframework.context.Lifecycle, org.springframework.web.socket.sockjs.transport.SockJsServiceConfig)
      - org.springframework.web.socket.sockjs.transport.handler.DefaultSockJsService (implements org.springframework.web.context.ServletContextAware)
  - org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession (implements org.springframework.web.socket.sockjs.transport.SockJsSession)
    - org.springframework.web.socket.sockjs.transport.session.AbstractHttpSockJsSession
      - org.springframework.web.socket.sockjs.transport.session.PollingSockJsSession
      - org.springframework.web.socket.sockjs.transport.session.StreamingSockJsSession
    - org.springframework.web.socket.sockjs.transport.session.WebSocketServerSockJsSession (implements org.springframework.web.socket.adapter.NativeWebSocketSession)
  - org.springframework.web.socket.server.standard.AbstractStandardUpgradeStrategy (implements org.springframework.web.socket.server.RequestUpgradeStrategy)
    - org.springframework.web.socket.server.standard.AbstractTyrusRequestUpgradeStrategy
      - org.springframework.web.socket.server.standard.GlassFishRequestUpgradeStrategy
      - org.springframework.web.socket.server.standard.WebLogicRequestUpgradeStrategy
    - org.springframework.web.socket.server.standard.TomcatRequestUpgradeStrategy
    - org.springframework.web.socket.server.standard.UndertowRequestUpgradeStrategy
    - org.springframework.web.socket.server.standard.WebSphereRequestUpgradeStrategy
  - org.springframework.web.socket.sockjs.transport.handler.AbstractTransportHandler (implements org.springframework.web.socket.sockjs.transport.TransportHandler)
    - org.springframework.web.socket.sockjs.transport.handler.AbstractHttpReceivingTransportHandler
      - org.springframework.web.socket.sockjs.transport.handler.XhrReceivingTransportHandler
    - org.springframework.web.socket.sockjs.transport.handler.AbstractHttpSendingTransportHandler (implements org.springframework.web.socket.sockjs.transport.SockJsSessionFactory)
      - org.springframework.web.socket.sockjs.transport.handler.EventSourceTransportHandler
      - org.springframework.web.socket.sockjs.transport.handler.HtmlFileTransportHandler
      - org.springframework.web.socket.sockjs.transport.handler.XhrPollingTransportHandler
      - org.springframework.web.socket.sockjs.transport.handler.XhrStreamingTransportHandler
    - org.springframework.web.socket.sockjs.transport.handler.WebSocketTransportHandler (implements org.springframework.web.socket.server.HandshakeHandler, org.springframework.context.Lifecycle, org.springframework.web.context.ServletContextAware, org.springframework.web.socket.sockjs.transport.SockJsSessionFactory)
  - org.springframework.web.socket.client.AbstractWebSocketClient (implements org.springframework.web.socket.client.WebSocketClient)
    - org.springframework.web.socket.client.jetty.JettyWebSocketClient (implements org.springframework.context.Lifecycle)
    - org.springframework.web.socket.client.standard.StandardWebSocketClient
  - org.springframework.web.socket.handler.AbstractWebSocketHandler (implements org.springframework.web.socket.WebSocketHandler)
    - org.springframework.web.socket.handler.BinaryWebSocketHandler
    - org.springframework.web.socket.handler.TextWebSocketHandler
      - org.springframework.web.socket.sockjs.transport.handler.SockJsWebSocketHandler (implements org.springframework.web.socket.SubProtocolCapable)
  - org.springframework.web.socket.config.annotation.AbstractWebSocketHandlerRegistration<M> (implements org.springframework.web.socket.config.annotation.WebSocketHandlerRegistration)
    - org.springframework.web.socket.config.annotation.ServletWebSocketHandlerRegistration
  - org.springframework.web.socket.AbstractWebSocketMessage<T> (implements org.springframework.web.socket.WebSocketMessage<T>)
    - org.springframework.web.socket.BinaryMessage
    - org.springframework.web.socket.PingMessage
    - org.springframework.web.socket.PongMessage
    - org.springframework.web.socket.TextMessage
  - org.springframework.web.socket.config.annotation.AbstractWebSocketMessageBrokerConfigurer (implements org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer)
  - org.springframework.web.socket.adapter.AbstractWebSocketSession<T> (implements org.springframework.web.socket.adapter.NativeWebSocketSession)
    - org.springframework.web.socket.adapter.jetty.JettyWebSocketSession
    - org.springframework.web.socket.adapter.standard.StandardWebSocketSession
  - org.springframework.web.socket.sockjs.client.AbstractXhrTransport (implements org.springframework.web.socket.sockjs.client.XhrTransport)
    - org.springframework.web.socket.sockjs.client.JettyXhrTransport (implements org.springframework.context.Lifecycle)
    - org.springframework.web.socket.sockjs.client.RestTemplateXhrTransport
    - org.springframework.web.socket.sockjs.client.UndertowXhrTransport
  - org.springframework.context.support.ApplicationObjectSupport (implements org.springframework.context.ApplicationContextAware)
    - org.springframework.web.context.support.WebApplicationObjectSupport (implements org.springframework.web.context.ServletContextAware)
      - org.springframework.web.servlet.handler.AbstractHandlerMapping (implements org.springframework.beans.factory.BeanNameAware, org.springframework.web.servlet.HandlerMapping, org.springframework.core.Ordered)
        - org.springframework.web.servlet.handler.AbstractUrlHandlerMapping (implements org.springframework.web.servlet.handler.MatchableHandlerMapping)
          - org.springframework.web.servlet.handler.SimpleUrlHandlerMapping
            - org.springframework.web.socket.server.support.WebSocketHandlerMapping (implements org.springframework.context.SmartLifecycle)
      - org.springframework.web.socket.server.standard.ServerEndpointExporter (implements org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.SmartInitializingSingleton)
  - org.springframework.web.socket.handler.BeanCreatingHandlerProvider<T> (implements org.springframework.beans.factory.BeanFactoryAware)
  - org.springframework.web.socket.CloseStatus
  - org.springframework.web.socket.client.ConnectionManagerSupport (implements org.springframework.context.SmartLifecycle)
    - org.springframework.web.socket.client.standard.AnnotatedEndpointConnectionManager (implements org.springframework.beans.factory.BeanFactoryAware)
    - org.springframework.web.socket.client.standard.EndpointConnectionManager (implements org.springframework.beans.factory.BeanFactoryAware)
    - org.springframework.web.socket.client.WebSocketConnectionManager
  - org.springframework.web.socket.adapter.standard.ConvertingEncoderDecoderSupport<T,M>
    - org.springframework.web.socket.adapter.standard.ConvertingEncoderDecoderSupport.BinaryDecoder<T> (implements javax.websocket.Decoder.Binary<T>)
    - org.springframework.web.socket.adapter.standard.ConvertingEncoderDecoderSupport.BinaryEncoder<T> (implements javax.websocket.Encoder.Binary<T>)
    - org.springframework.web.socket.adapter.standard.ConvertingEncoderDecoderSupport.TextDecoder<T> (implements javax.websocket.Decoder.Text<T>)
    - org.springframework.web.socket.adapter.standard.ConvertingEncoderDecoderSupport.TextEncoder<T> (implements javax.websocket.Encoder.Text<T>)
  - org.springframework.web.socket.messaging.DefaultSimpUserRegistry (implements org.springframework.messaging.simp.user.SimpUserRegistry, org.springframework.context.event.SmartApplicationListener)
  - org.springframework.web.socket.sockjs.frame.DefaultSockJsFrameFormat (implements org.springframework.web.socket.sockjs.frame.SockJsFrameFormat)
  - javax.websocket.Endpoint
    - org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter
  - java.util.EventObject (implements java.io.Serializable)
    - org.springframework.context.ApplicationEvent
      - org.springframework.web.socket.messaging.AbstractSubProtocolEvent
        - org.springframework.web.socket.messaging.SessionConnectedEvent
        - org.springframework.web.socket.messaging.SessionConnectEvent
        - org.springframework.web.socket.messaging.SessionDisconnectEvent
        - org.springframework.web.socket.messaging.SessionSubscribeEvent
        - org.springframework.web.socket.messaging.SessionUnsubscribeEvent
  - org.eclipse.jetty.websocket.api.extensions.ExtensionConfig
    - org.springframework.web.socket.adapter.jetty.WebSocketToJettyExtensionConfigAdapter
  - org.springframework.web.socket.server.support.HandshakeInterceptorChain
  - org.springframework.http.HttpHeaders (implements org.springframework.util.MultiValueMap<K,V>, java.io.Serializable)
    - org.springframework.web.socket.WebSocketHttpHeaders
  - org.springframework.web.socket.server.support.HttpSessionHandshakeInterceptor (implements org.springframework.web.socket.server.HandshakeInterceptor)
  - org.springframework.web.socket.server.jetty.JettyRequestUpgradeStrategy (implements org.springframework.context.Lifecycle, org.springframework.web.socket.server.RequestUpgradeStrategy, org.springframework.web.context.ServletContextAware)
  - org.springframework.web.socket.adapter.jetty.JettyWebSocketHandlerAdapter
  - org.springframework.beans.factory.xml.NamespaceHandlerSupport (implements org.springframework.beans.factory.xml.NamespaceHandler)
    - org.springframework.web.socket.config.WebSocketNamespaceHandler
  - org.springframework.web.socket.server.support.OriginHandshakeInterceptor (implements org.springframework.web.socket.server.HandshakeInterceptor)
  - org.springframework.web.socket.handler.PerConnectionWebSocketHandler (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.web.socket.WebSocketHandler)
  - javax.websocket.server.ServerEndpointConfig.Configurator
    - org.springframework.web.socket.server.standard.ServerEndpointRegistration (implements org.springframework.beans.factory.BeanFactoryAware, javax.websocket.server.ServerEndpointConfig)
    - org.springframework.web.socket.server.standard.SpringConfigurator
  - org.springframework.web.socket.server.standard.ServletServerContainerFactoryBean (implements org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean, org.springframework.web.context.ServletContextAware)
  - org.springframework.web.socket.config.annotation.ServletWebSocketHandlerRegistry (implements org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry)
  - org.springframework.web.socket.sockjs.client.SockJsClient (implements org.springframework.context.Lifecycle, org.springframework.web.socket.client.WebSocketClient)
  - org.springframework.web.socket.sockjs.frame.SockJsFrame
  - org.springframework.web.socket.sockjs.support.SockJsHttpRequestHandler (implements org.springframework.web.cors.CorsConfigurationSource, org.springframework.web.HttpRequestHandler, org.springframework.context.Lifecycle, org.springframework.web.context.ServletContextAware)
  - org.springframework.web.socket.config.annotation.SockJsServiceRegistration
  - org.springframework.web.socket.sockjs.client.SockJsUrlInfo
  - org.springframework.messaging.simp.stomp.StompClientSupport
    - org.springframework.web.socket.messaging.WebSocketStompClient (implements org.springframework.context.SmartLifecycle)
  - org.springframework.web.socket.messaging.StompSubProtocolErrorHandler (implements org.springframework.web.socket.messaging.SubProtocolErrorHandler<P>)
  - org.springframework.web.socket.messaging.StompSubProtocolHandler (implements org.springframework.context.ApplicationEventPublisherAware, org.springframework.web.socket.messaging.SubProtocolHandler)
  - org.springframework.web.socket.messaging.SubProtocolWebSocketHandler (implements org.springframework.messaging.MessageHandler, org.springframework.context.SmartLifecycle, org.springframework.web.socket.SubProtocolCapable, org.springframework.web.socket.WebSocketHandler)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - org.springframework.core.NestedRuntimeException
          - org.springframework.web.socket.server.HandshakeFailureException
          - org.springframework.web.socket.sockjs.SockJsException
            - org.springframework.web.socket.sockjs.SockJsMessageDeliveryException
            - org.springframework.web.socket.sockjs.SockJsTransportFailureException
        - org.springframework.web.socket.handler.SessionLimitExceededException
  - org.springframework.web.socket.config.annotation.WebMvcStompEndpointRegistry (implements org.springframework.web.socket.config.annotation.StompEndpointRegistry)
  - org.springframework.web.socket.config.annotation.WebMvcStompWebSocketEndpointRegistration (implements org.springframework.web.socket.config.annotation.StompWebSocketEndpointRegistration)
  - org.springframework.web.socket.config.annotation.WebSocketConfigurationSupport
    - org.springframework.web.socket.config.annotation.DelegatingWebSocketConfiguration
  - org.springframework.web.socket.client.standard.WebSocketContainerFactoryBean (implements org.springframework.beans.factory.FactoryBean<T>)
  - org.springframework.web.socket.WebSocketExtension
    - org.springframework.web.socket.adapter.standard.StandardToWebSocketExtensionAdapter
  - org.springframework.web.socket.handler.WebSocketHandlerDecorator (implements org.springframework.web.socket.WebSocketHandler)
    - org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator
    - org.springframework.web.socket.handler.LoggingWebSocketHandlerDecorator
  - org.springframework.web.socket.server.support.WebSocketHttpRequestHandler (implements org.springframework.web.HttpRequestHandler, org.springframework.context.Lifecycle, org.springframework.web.context.ServletContextAware)
  - org.springframework.web.socket.config.WebSocketMessageBrokerStats
  - org.springframework.web.socket.handler.WebSocketSessionDecorator (implements org.springframework.web.socket.WebSocketSession)
    - org.springframework.web.socket.handler.ConcurrentWebSocketSessionDecorator
  - org.springframework.web.socket.adapter.standard.WebSocketToStandardExtensionAdapter (implements javax.websocket.Extension)
  - org.springframework.web.socket.sockjs.client.WebSocketTransport (implements org.springframework.context.Lifecycle, org.springframework.web.socket.sockjs.client.Transport)
  - org.springframework.web.socket.config.annotation.WebSocketTransportRegistration

## Interface Hierarchy

- java.lang.AutoCloseable
  - java.io.Closeable
    - org.springframework.web.socket.adapter.NativeWebSocketSession
    - org.springframework.web.socket.sockjs.transport.SockJsSession
    - org.springframework.web.socket.WebSocketSession
      - org.springframework.web.socket.adapter.NativeWebSocketSession
      - org.springframework.web.socket.sockjs.transport.SockJsSession
  - org.springframework.web.socket.adapter.NativeWebSocketSession
  - org.springframework.web.socket.sockjs.transport.SockJsSession
  - org.springframework.web.socket.WebSocketSession
    - org.springframework.web.socket.adapter.NativeWebSocketSession
    - org.springframework.web.socket.sockjs.transport.SockJsSession
- org.springframework.web.socket.server.HandshakeHandler
- org.springframework.web.socket.server.HandshakeInterceptor
- org.springframework.web.socket.sockjs.client.InfoReceiver
  - org.springframework.web.socket.sockjs.client.XhrTransport (also extends org.springframework.web.socket.sockjs.client.Transport)
- org.springframework.web.socket.server.RequestUpgradeStrategy
- org.springframework.web.socket.sockjs.frame.SockJsFrameFormat
- org.springframework.web.socket.sockjs.frame.SockJsMessageCodec
- org.springframework.web.socket.sockjs.SockJsService
- org.springframework.web.socket.sockjs.transport.SockJsServiceConfig
- org.springframework.web.socket.sockjs.transport.SockJsSessionFactory
- org.springframework.web.socket.config.annotation.StompEndpointRegistry
- org.springframework.web.socket.messaging.StompSubProtocolHandler.Stats
- org.springframework.web.socket.config.annotation.StompWebSocketEndpointRegistration
- org.springframework.web.socket.SubProtocolCapable
- org.springframework.web.socket.messaging.SubProtocolErrorHandler<P>
- org.springframework.web.socket.messaging.SubProtocolHandler
- org.springframework.web.socket.messaging.SubProtocolWebSocketHandler.Stats
- org.springframework.web.socket.sockjs.client.Transport
  - org.springframework.web.socket.sockjs.client.XhrTransport (also extends org.springframework.web.socket.sockjs.client.InfoReceiver)
- org.springframework.web.socket.sockjs.transport.TransportHandler
- org.springframework.web.socket.sockjs.client.TransportRequest
- org.springframework.web.socket.client.WebSocketClient
- org.springframework.web.socket.config.annotation.WebSocketConfigurer
- org.springframework.web.socket.WebSocketHandler
- org.springframework.web.socket.handler.WebSocketHandlerDecoratorFactory
- org.springframework.web.socket.config.annotation.WebSocketHandlerRegistration
- org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry
- org.springframework.web.socket.WebSocketMessage<T>
- org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer

## Annotation Type Hierarchy

- org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker (implements java.lang.annotation.Annotation)
- org.springframework.web.socket.config.annotation.EnableWebSocket (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.springframework.web.socket.handler.ConcurrentWebSocketSessionDecorator.OverflowStrategy
    - org.springframework.web.socket.sockjs.transport.TransportType
    - org.springframework.web.socket.sockjs.frame.SockJsFrameType