# Hierarchy For All Packages

Package Hierarchies:

- org.jetlang.remote.acceptor,
- org.jetlang.remote.client,
- org.jetlang.remote.core,
- org.jetlang.web

## Class Hierarchy

- java.lang.Object
  - org.jetlang.remote.acceptor.Acceptor (implements java.lang.Runnable)
  - org.jetlang.remote.acceptor.Acceptor.ErrorHandler.SysOut (implements org.jetlang.remote.acceptor.Acceptor.ErrorHandler)
  - org.jetlang.web.AuthHttpHandler<T> (implements org.jetlang.web.HttpHandler<T>)
  - org.jetlang.remote.acceptor.BufferedSerializer
  - org.jetlang.remote.core.ByteArrayBuffer
  - org.jetlang.remote.core.ByteArraySerializer (implements org.jetlang.remote.core.Serializer)
  - org.jetlang.remote.core.ByteArraySerializer.Factory (implements org.jetlang.remote.core.SerializerFactory)
  - org.jetlang.remote.core.ByteArraySerializer.Reader (implements org.jetlang.remote.core.ObjectByteReader)
  - org.jetlang.remote.core.ByteArraySerializer.Writer (implements org.jetlang.remote.core.ObjectByteWriter)
  - org.jetlang.remote.acceptor.ClientTcpSocket
  - org.jetlang.remote.acceptor.CloseableByteArrayStream (implements org.jetlang.remote.core.ClosableOutputStream)
  - org.jetlang.remote.core.CloseableChannel<T> (implements org.jetlang.channels.Channel<T>)
  - org.jetlang.remote.core.CloseableChannel.Group
  - org.jetlang.remote.client.CloseEvent.GracefulDisconnect (implements org.jetlang.remote.client.CloseEvent)
  - org.jetlang.remote.client.CloseEvent.IOExceptionEvent (implements org.jetlang.remote.client.CloseEvent)
    - org.jetlang.remote.client.CloseEvent.ReadException
    - org.jetlang.remote.client.CloseEvent.WriteException
  - org.jetlang.remote.client.ConnectEvent
  - org.jetlang.remote.client.DeadMessageEvent
  - org.jetlang.remote.core.ErrorHandler.SysOut (implements org.jetlang.remote.core.ErrorHandler)
  - org.jetlang.remote.acceptor.FiberForAllSessions (implements org.jetlang.remote.acceptor.ClientPublisher, org.jetlang.remote.acceptor.NewSessionHandler)
  - org.jetlang.remote.acceptor.FiberPerSession (implements org.jetlang.remote.acceptor.NewSessionHandler)
  - org.jetlang.remote.acceptor.FiberPerSession.FiberFactory.ThreadFiberFactory (implements org.jetlang.remote.acceptor.FiberPerSession.FiberFactory)
  - org.jetlang.web.HandlerLocator.List<T> (implements org.jetlang.web.HandlerLocator<T>)
  - org.jetlang.web.HandlerLocator.ResourcesDirectory<T> (implements org.jetlang.web.HandlerLocator<T>)
  - org.jetlang.web.HeaderReader<T>
  - org.jetlang.web.HeaderReader.FirstLine (implements org.jetlang.web.NioReader.State)
  - org.jetlang.web.HeaderReader.HeaderLine (implements org.jetlang.web.NioReader.State)
  - org.jetlang.web.HeaderReader.ReadHeader (implements org.jetlang.web.NioReader.State)
  - org.jetlang.remote.core.HeartbeatEvent
  - org.jetlang.web.HttpRequest
  - org.jetlang.web.HttpRequestHandler.Default<T> (implements org.jetlang.web.HttpRequestHandler<T>)
  - org.jetlang.web.HttpResponse.Decorator (implements org.jetlang.web.HttpResponse)
  - org.jetlang.web.HttpResponse.Default (implements org.jetlang.web.HttpResponse)
  - org.jetlang.remote.core.JavaSerializationReader (implements org.jetlang.remote.core.ObjectByteReader)
  - org.jetlang.remote.core.JavaSerializationWriter (implements org.jetlang.remote.core.ObjectByteWriter)
  - org.jetlang.remote.core.JavaSerializer (implements org.jetlang.remote.core.Serializer)
  - org.jetlang.remote.core.JavaSerializer.Factory (implements org.jetlang.remote.core.SerializerFactory)
  - org.jetlang.remote.acceptor.JetlangBaseSession (implements org.jetlang.remote.acceptor.JetlangMessagePublisher, org.jetlang.remote.acceptor.JetlangSession)
    - org.jetlang.remote.acceptor.JetlangNioSession (implements org.jetlang.remote.acceptor.JetlangMessageHandler)
    - org.jetlang.remote.acceptor.JetlangStreamSession (implements org.jetlang.remote.core.JetlangRemotingProtocol.Handler)
  - org.jetlang.remote.client.JetlangClientConfig
  - org.jetlang.remote.acceptor.JetlangClientHandler (implements org.jetlang.remote.acceptor.Acceptor.ClientHandler, org.jetlang.remote.acceptor.ClientPublisher)
  - org.jetlang.remote.acceptor.JetlangClientHandler.FiberFactory.ThreadFiberFactory (implements org.jetlang.remote.acceptor.JetlangClientHandler.FiberFactory)
  - org.jetlang.remote.acceptor.JetlangFiberSession (implements org.jetlang.remote.acceptor.JetlangSession)
  - org.jetlang.remote.core.JetlangRemotingInputStream
  - org.jetlang.remote.core.JetlangRemotingProtocol
  - org.jetlang.remote.acceptor.JetlangSessionConfig
  - org.jetlang.remote.client.JetlangTcpClient (implements org.jetlang.remote.client.JetlangClient)
  - org.jetlang.web.KeyValueList (implements java.lang.Iterable<T>)
  - org.jetlang.web.KeyValueList.Entry
  - org.jetlang.remote.acceptor.LogoutEvent
  - org.jetlang.remote.client.LogoutResult
  - org.jetlang.web.MimeType.Binary (implements org.jetlang.web.MimeType)
  - org.jetlang.web.MimeType.Text (implements org.jetlang.web.MimeType)
    - org.jetlang.web.MimeType.Utf8Text
  - org.jetlang.remote.core.MsgTypes
  - org.jetlang.remote.acceptor.NioAcceptorHandler (implements org.jetlang.fibers.NioChannelHandler)
  - org.jetlang.remote.acceptor.NioClientHandler (implements org.jetlang.fibers.NioChannelHandler)
  - org.jetlang.remote.acceptor.NioJetlangChannelHandler (implements org.jetlang.fibers.NioChannelHandler)
  - org.jetlang.remote.acceptor.NioJetlangRemotingClientFactory (implements org.jetlang.remote.acceptor.NioAcceptorHandler.ClientFactory)
  - org.jetlang.remote.acceptor.NioJetlangRemotingClientFactory.Hb
  - org.jetlang.remote.acceptor.NioJetlangRemotingClientFactory.Id
  - org.jetlang.remote.acceptor.NioJetlangSendFiber
  - org.jetlang.remote.acceptor.NioJetlangSendFiber.ChannelState
  - org.jetlang.web.NioReader<T> (implements org.jetlang.fibers.NioChannelHandler)
  - org.jetlang.web.NioReader.Close (implements org.jetlang.web.NioReader.State)
  - org.jetlang.web.NioWriter
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - java.io.ByteArrayOutputStream
      - org.jetlang.remote.core.JavaSerializationWriter.ByteStream
  - org.jetlang.web.PathLocator<T> (implements org.jetlang.web.HandlerLocator<T>)
  - org.jetlang.web.PathMatcher.PathEq<T> (implements org.jetlang.web.PathMatcher<T>)
  - org.jetlang.remote.core.ReadTimeoutEvent
  - org.jetlang.web.RoundRobinClientFactory (implements org.jetlang.remote.acceptor.NioAcceptorHandler.ClientFactory)
  - org.jetlang.web.SendResult
    - org.jetlang.web.SendResult.Buffered
    - org.jetlang.web.SendResult.FailedWithError
  - org.jetlang.remote.acceptor.SerializerAdapter
  - org.jetlang.remote.acceptor.SessionCloseEvent
  - org.jetlang.web.SessionDispatcherFactory.FiberSession<S> (implements org.jetlang.web.SessionDispatcherFactory.SessionDispatcher<S>)
  - org.jetlang.web.SessionDispatcherFactory.FiberSessionFactory<S> (implements org.jetlang.web.SessionDispatcherFactory<S>)
  - org.jetlang.web.SessionDispatcherFactory.OnReadThread<S> (implements org.jetlang.web.SessionDispatcherFactory.SessionDispatcher<S>)
  - org.jetlang.web.SessionDispatcherFactory.OnReadThreadDispatcher<S> (implements org.jetlang.web.SessionDispatcherFactory<S>)
  - org.jetlang.remote.acceptor.SessionMessage<T>
  - org.jetlang.remote.acceptor.SessionRequest
  - org.jetlang.remote.acceptor.SessionTopic
  - org.jetlang.remote.client.SocketConnector
  - org.jetlang.remote.core.SocketMessageStreamWriter (implements org.jetlang.remote.acceptor.MessageStreamWriter)
  - org.jetlang.remote.core.SocketMessageStreamWriter.BufferedStream (implements org.jetlang.remote.core.SocketMessageStreamWriter.Out)
  - org.jetlang.web.StaticHtml<T> (implements org.jetlang.web.HttpHandler<T>)
  - org.jetlang.remote.core.TcpSocket (implements org.jetlang.remote.core.ClosableOutputStream)
  - org.jetlang.web.WebAcceptor
  - org.jetlang.web.WebAcceptor.Config
  - org.jetlang.web.WebDispatcher<S> (implements org.jetlang.remote.acceptor.NioAcceptorHandler.ClientFactory)
  - org.jetlang.web.WebFiberConnection (implements org.jetlang.web.WebSocketConnection)
  - org.jetlang.web.WebServerConfigBuilder<S>
  - org.jetlang.web.WebSocketClient<S,T>
  - org.jetlang.web.WebSocketClient.Config
  - org.jetlang.web.WebSocketConnectionImpl (implements org.jetlang.web.WebSocketConnection)
  - org.jetlang.web.WebSocketReader<S,T>
  - org.jetlang.web.WebSocketRequestHandler<S,T> (implements org.jetlang.web.Handler<T>)

## Interface Hierarchy

- org.jetlang.remote.acceptor.Acceptor.ClientHandler
- org.jetlang.remote.acceptor.Acceptor.ErrorHandler
- org.jetlang.remote.core.ByteMessageWriter
- org.jetlang.remote.acceptor.ClientPublisher
- org.jetlang.remote.core.ClosableOutputStream
- org.jetlang.remote.client.CloseEvent
- org.jetlang.core.Disposable
  - org.jetlang.core.Scheduler
    - org.jetlang.web.WebSocketConnection (also extends org.jetlang.core.DisposingExecutor)
  - org.jetlang.web.WebSocketConnection (also extends org.jetlang.core.DisposingExecutor, org.jetlang.core.Scheduler)
- org.jetlang.remote.core.ErrorHandler
- java.util.concurrent.Executor
  - org.jetlang.core.DisposingExecutor
    - org.jetlang.web.WebSocketConnection (also extends org.jetlang.core.Scheduler)
  - org.jetlang.web.WebSocketConnection (also extends org.jetlang.core.DisposingExecutor, org.jetlang.core.Scheduler)
- org.jetlang.remote.acceptor.FiberPerSession.FiberFactory
- org.jetlang.web.Handler<T>
  - org.jetlang.web.HttpHandler<T>
- org.jetlang.web.HandlerLocator<T>
- org.jetlang.web.HttpRequestHandler<T>
- org.jetlang.web.HttpResponse
- org.jetlang.web.HttpSecurity<T>
- org.jetlang.remote.client.JetlangClient
- org.jetlang.remote.acceptor.JetlangClientHandler.FiberFactory
- org.jetlang.remote.acceptor.JetlangMessagePublisher
- org.jetlang.remote.acceptor.JetlangNioSession.ErrorHandler
- org.jetlang.remote.core.JetlangRemotingProtocol.Handler
  - org.jetlang.remote.acceptor.JetlangMessageHandler
- org.jetlang.remote.core.JetlangRemotingProtocol.State
- org.jetlang.remote.acceptor.JetlangSession
- org.jetlang.remote.acceptor.MessageStreamWriter
- org.jetlang.web.MimeType
- org.jetlang.remote.acceptor.NewFiberSessionHandler
- org.jetlang.remote.acceptor.NewSessionHandler
- org.jetlang.remote.acceptor.NioAcceptorHandler.ClientFactory
- org.jetlang.remote.acceptor.NioClientHandler.Reader
- org.jetlang.remote.acceptor.NioJetlangRemotingClientFactory.Handler
- org.jetlang.web.NioReader.State
- org.jetlang.remote.core.ObjectByteReader
- org.jetlang.remote.core.ObjectByteWriter
- org.jetlang.web.PathMatcher<T>
- org.jetlang.remote.core.Serializer
- org.jetlang.remote.core.SerializerFactory
- org.jetlang.web.SessionDispatcherFactory<S>
- org.jetlang.web.SessionDispatcherFactory.SessionDispatcher<S>
- org.jetlang.web.SessionFactory<T>
- org.jetlang.remote.core.SocketMessageStreamWriter.Out
- org.jetlang.remote.client.SocketWriter
- org.jetlang.web.StringDecoder
- org.jetlang.remote.client.TimeoutControls
- org.jetlang.web.WebServerConfigBuilder.RequestDecorator<S>
- org.jetlang.web.WebSocketHandler<S,T>
- org.jetlang.web.WebSocketSecurity<T>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.jetlang.web.SendResult.Type