# Hierarchy For All Packages

Package Hierarchies:

- com.io7m.looseleaf.cmdline,
- com.io7m.looseleaf.cmdline.internal,
- com.io7m.looseleaf.database.api,
- com.io7m.looseleaf.database.sqlite,
- com.io7m.looseleaf.grafana,
- com.io7m.looseleaf.protocol.v1,
- com.io7m.looseleaf.security,
- com.io7m.looseleaf.server,
- com.io7m.looseleaf.server.api,
- com.io7m.looseleaf.server.internal,
- com.io7m.looseleaf.server.internal.auth,
- com.io7m.looseleaf.server.internal.telemetry,
- com.io7m.looseleaf.server.internal.v1

## Class Hierarchy

- java.lang.Object
  - org.eclipse.jetty.util.component.AbstractLifeCycle (implements org.eclipse.jetty.util.component.LifeCycle)
    - org.eclipse.jetty.servlet.BaseHolder<T> (implements org.eclipse.jetty.util.component.Dumpable)
      - org.eclipse.jetty.servlet.Holder<T>
        - org.eclipse.jetty.servlet.ServletHolder (implements java.lang.Comparable<T>, org.eclipse.jetty.server.UserIdentity.Scope)
          - com.io7m.looseleaf.server.internal.LLServletHolder<T>
    - org.eclipse.jetty.util.component.ContainerLifeCycle (implements org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable.DumpableContainer)
      - org.eclipse.jetty.server.handler.AbstractHandler (implements org.eclipse.jetty.server.Handler)
        - org.eclipse.jetty.server.handler.ErrorHandler
          - com.io7m.looseleaf.server.internal.LLErrorHandler
      - org.eclipse.jetty.security.AbstractLoginService (implements org.eclipse.jetty.security.LoginService)
        - com.io7m.looseleaf.server.internal.auth.LLLoginService
  - ch.qos.logback.core.spi.ContextAwareBase (implements ch.qos.logback.core.spi.ContextAware)
    - ch.qos.logback.core.LayoutBase<E> (implements ch.qos.logback.core.Layout<E>)
      - com.io7m.looseleaf.cmdline.LLLoggingPatternLayout
  - org.eclipse.jetty.util.security.Credential (implements java.io.Serializable)
    - com.io7m.looseleaf.server.internal.auth.LLPasswordAsCredential
  - jakarta.servlet.GenericServlet (implements java.io.Serializable, jakarta.servlet.Servlet, jakarta.servlet.ServletConfig)
    - jakarta.servlet.http.HttpServlet
      - com.io7m.looseleaf.server.internal.v1.LLCheckAuthServlet
      - com.io7m.looseleaf.server.internal.v1.LLDeleteServlet
      - com.io7m.looseleaf.server.internal.LLHealth
      - com.io7m.looseleaf.server.internal.v1.LLReadServlet
      - com.io7m.looseleaf.server.internal.v1.LLRUDServlet
      - com.io7m.looseleaf.server.internal.v1.LLUpdateServlet
      - com.io7m.looseleaf.server.internal.LLVersions
  - com.io7m.jxtrand.vanilla.JXTAbstractStrings (implements com.io7m.jxtrand.api.JXTStringsType)
    - com.io7m.looseleaf.server.internal.LLStrings (implements com.io7m.repetoir.core.RPServiceType)
  - com.io7m.looseleaf.server.internal.auth.LLBasicAuthenticator (implements org.eclipse.jetty.security.Authenticator)
  - com.io7m.looseleaf.cmdline.internal.LLCheckConfiguration (implements com.io7m.quarrel.core.QCommandType)
  - com.io7m.looseleaf.server.internal.LLConfigurationService (implements com.io7m.repetoir.core.RPServiceType)
  - com.io7m.looseleaf.cmdline.internal.LLCreatePassword (implements com.io7m.quarrel.core.QCommandType)
  - com.io7m.looseleaf.server.internal.LLDatabaseService (implements java.io.Closeable, com.io7m.repetoir.core.RPServiceType)
  - com.io7m.looseleaf.database.sqlite.LLDatabaseSQLite (implements com.io7m.looseleaf.database.api.LLDatabaseType)
  - com.io7m.looseleaf.database.sqlite.LLDatabaseSQLiteFactory (implements com.io7m.looseleaf.database.api.LLDatabaseFactoryType)
  - com.io7m.looseleaf.grafana.LLGrafana
  - com.io7m.looseleaf.security.LLKeyExpression
  - com.io7m.looseleaf.security.LLKeyName (implements java.lang.Comparable<T>)
  - com.io7m.looseleaf.server.internal.LLMetricsService (implements com.io7m.repetoir.core.RPServiceType)
  - com.io7m.looseleaf.cmdline.internal.LLMigrateDatabase (implements com.io7m.quarrel.core.QCommandType)
  - com.io7m.looseleaf.security.LLPasswordAlgorithmPBKDF2HmacSHA256 (implements com.io7m.looseleaf.security.LLPasswordAlgorithmType)
  - com.io7m.looseleaf.security.LLPasswordAlgorithms
  - com.io7m.looseleaf.server.internal.LLRequestLogger (implements org.eclipse.jetty.server.RequestLog)
  - com.io7m.looseleaf.security.LLSecurityContext
  - com.io7m.looseleaf.security.LLSecurityContext.Builder
  - com.io7m.looseleaf.cmdline.internal.LLServer (implements com.io7m.quarrel.core.QCommandType)
  - com.io7m.looseleaf.server.internal.LLServer (implements com.io7m.looseleaf.server.api.LLServerType)
  - com.io7m.looseleaf.server.internal.LLServerClock (implements com.io7m.repetoir.core.RPServiceType)
  - com.io7m.looseleaf.server.api.LLServerConfigurations
  - com.io7m.looseleaf.server.internal.LLServerRequestDecoration (implements org.eclipse.jetty.server.HttpChannel.Listener)
  - com.io7m.looseleaf.server.internal.LLServerRequestTimeFilter (implements jakarta.servlet.Filter)
  - com.io7m.looseleaf.server.LLServers (implements com.io7m.looseleaf.server.api.LLServerFactoryType)
  - com.io7m.looseleaf.server.internal.LLServletHolders
  - com.io7m.looseleaf.server.internal.telemetry.LLTelemetryNoOp (implements com.io7m.looseleaf.server.internal.telemetry.LLTelemetryServiceType)
  - com.io7m.looseleaf.server.internal.telemetry.LLTelemetryService (implements com.io7m.looseleaf.server.internal.telemetry.LLTelemetryServiceType)
  - com.io7m.looseleaf.server.internal.telemetry.LLTelemetryServices (implements com.io7m.looseleaf.server.internal.telemetry.LLTelemetryServiceFactoryType)
  - com.io7m.looseleaf.protocol.v1.LLv1Messages
  - com.io7m.looseleaf.server.internal.LLv1MessagesService (implements com.io7m.repetoir.core.RPServiceType)
  - com.io7m.looseleaf.server.LLVersion
  - com.io7m.looseleaf.server.internal.v1.LLWithTelemetry
  - com.io7m.looseleaf.cmdline.Main (implements java.lang.Runnable)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - com.io7m.looseleaf.server.internal.LLHTTPErrorStatusException
      - com.io7m.looseleaf.security.LLPasswordException
  - org.eclipse.jetty.security.UserPrincipal (implements java.security.Principal, java.io.Serializable)
    - com.io7m.looseleaf.server.internal.auth.LLUserPrincipal

## Interface Hierarchy

- java.lang.AutoCloseable
  - java.io.Closeable
    - com.io7m.looseleaf.database.api.LLDatabaseType
    - com.io7m.looseleaf.server.api.LLServerType
- com.io7m.looseleaf.database.api.LLDatabaseFactoryType
- com.io7m.looseleaf.security.LLPasswordAlgorithmType
- com.io7m.looseleaf.server.api.LLServerFactoryType
- com.io7m.looseleaf.server.internal.telemetry.LLTelemetryServiceFactoryType
- com.io7m.looseleaf.protocol.v1.LLv1MessageType
- com.io7m.looseleaf.server.internal.v1.LLWithTelemetry.WithTelemetryType
- com.io7m.repetoir.core.RPServiceType
  - com.io7m.looseleaf.server.internal.telemetry.LLTelemetryServiceType

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - com.io7m.looseleaf.security.LLAction
    - com.io7m.looseleaf.server.api.LLOTLPProtocol
    - com.io7m.looseleaf.server.api.LLServerAction

## Record Class Hierarchy

- java.lang.Object
  - java.lang.Record
    - com.io7m.looseleaf.database.api.LLDatabaseRUD
    - com.io7m.looseleaf.server.api.LLFaultInjection
    - com.io7m.looseleaf.security.LLGrant
    - com.io7m.looseleaf.server.api.LLLogs
    - com.io7m.looseleaf.server.api.LLMetrics
    - com.io7m.looseleaf.security.LLPassword
    - com.io7m.looseleaf.security.LLRole
    - com.io7m.looseleaf.security.LLRoleName
    - com.io7m.looseleaf.server.api.LLServerAddress
    - com.io7m.looseleaf.server.api.LLServerConfiguration
    - com.io7m.looseleaf.server.api.LLServerGrant
    - com.io7m.looseleaf.server.api.LLServerHashedPassword
    - com.io7m.looseleaf.server.api.LLServerRole
    - com.io7m.looseleaf.server.api.LLServerUser
    - com.io7m.looseleaf.server.api.LLTelemetryConfiguration
    - com.io7m.looseleaf.server.api.LLTraces
    - com.io7m.looseleaf.security.LLUser
    - com.io7m.looseleaf.security.LLUserName
    - com.io7m.looseleaf.protocol.v1.LLv1Error (implements com.io7m.looseleaf.protocol.v1.LLv1MessageType)
    - com.io7m.looseleaf.protocol.v1.LLv1Errors (implements com.io7m.looseleaf.protocol.v1.LLv1MessageType)
    - com.io7m.looseleaf.protocol.v1.LLv1Result (implements com.io7m.looseleaf.protocol.v1.LLv1MessageType)
    - com.io7m.looseleaf.protocol.v1.LLv1RUD (implements com.io7m.looseleaf.protocol.v1.LLv1MessageType)