# Hierarchy For All Packages

Package Hierarchies:

- org.apache.sling.api,
- org.apache.sling.api.adapter,
- org.apache.sling.api.auth,
- org.apache.sling.api.request,
- org.apache.sling.api.request.builder,
- org.apache.sling.api.request.header,
- org.apache.sling.api.resource,
- org.apache.sling.api.resource.external,
- org.apache.sling.api.resource.mapping,
- org.apache.sling.api.resource.observation,
- org.apache.sling.api.resource.path,
- org.apache.sling.api.resource.runtime,
- org.apache.sling.api.resource.runtime.dto,
- org.apache.sling.api.scripting,
- org.apache.sling.api.security,
- org.apache.sling.api.servlets,
- org.apache.sling.api.uri,
- org.apache.sling.api.wrappers,
- org.apache.sling.spi.resource.provider

## Class Hierarchy

- java.lang.Object
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractSet<E> (implements java.util.Set<E>)
      - java.util.TreeSet<E> (implements java.lang.Cloneable, java.util.NavigableSet<E>, java.io.Serializable)
        - org.apache.sling.api.request.header.JakartaMediaRangeList
        - org.apache.sling.api.request.header.MediaRangeList
  - java.util.AbstractMap<K,V> (implements java.util.Map<K,V>)
    - java.util.HashMap<K,V> (implements java.lang.Cloneable, java.util.Map<K,V>, java.io.Serializable)
      - org.apache.sling.api.scripting.LazyBindings (implements javax.script.Bindings)
        - org.apache.sling.api.scripting.SlingBindings
      - org.apache.sling.api.request.RequestDispatcherOptions
      - org.apache.sling.api.resource.ResourceMetadata
  - org.apache.sling.api.resource.AbstractResourceVisitor
  - org.apache.sling.api.request.builder.Builders
  - org.apache.sling.api.wrappers.CompositeValueMap (implements org.apache.sling.api.resource.ValueMap)
  - jakarta.servlet.GenericServlet (implements java.io.Serializable, jakarta.servlet.Servlet, jakarta.servlet.ServletConfig)
    - org.apache.sling.api.servlets.SlingJakartaSafeMethodsServlet
      - org.apache.sling.api.servlets.SlingJakartaAllMethodsServlet
  - javax.servlet.GenericServlet (implements java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig)
    - org.apache.sling.api.servlets.SlingSafeMethodsServlet
      - org.apache.sling.api.servlets.SlingAllMethodsServlet
  - org.apache.sling.api.servlets.HtmlResponse
  - org.apache.sling.api.servlets.HttpConstants
  - org.apache.sling.api.wrappers.IteratorWrapper<T> (implements java.util.Iterator<E>)
  - org.apache.sling.api.request.header.JakartaMediaRangeList.MediaRange (implements java.lang.Comparable<T>)
  - org.apache.sling.api.wrappers.JakartaToJavaxFilterWrapper (implements javax.servlet.Filter)
  - org.apache.sling.api.wrappers.JakartaToJavaxFilterWrapper.FilterChainWrapper (implements jakarta.servlet.FilterChain)
  - org.apache.sling.api.wrappers.JakartaToJavaxServletWrapper (implements javax.servlet.Servlet)
    - org.apache.sling.api.wrappers.JakartaToJavaxServletWrapper.JakartaToJavaxOptingServletWrapper (implements org.apache.sling.api.servlets.OptingServlet)
  - org.apache.sling.api.wrappers.JavaxToJakartaFilterWrapper (implements jakarta.servlet.Filter)
  - org.apache.sling.api.wrappers.JavaxToJakartaFilterWrapper.FilterChainWrapper (implements javax.servlet.FilterChain)
  - org.apache.sling.api.wrappers.JavaxToJakartaServletWrapper (implements jakarta.servlet.Servlet)
    - org.apache.sling.api.wrappers.JavaxToJakartaServletWrapper.JavaxToJakartaOptingServletWrapper (implements org.apache.sling.api.servlets.JakartaOptingServlet)
  - org.apache.sling.api.request.header.MediaRangeList.MediaRange (implements java.lang.Comparable<T>)
  - org.apache.sling.api.resource.path.Path (implements java.lang.Comparable<T>)
  - org.apache.sling.api.resource.path.PathBuilder
  - org.apache.sling.api.resource.path.PathSet (implements java.lang.Iterable<T>)
  - org.apache.sling.api.wrappers.RequestPathInfoWrapper (implements org.apache.sling.api.request.RequestPathInfo)
  - org.apache.sling.api.request.RequestUtil
  - org.apache.sling.api.resource.observation.ResourceChange
  - org.apache.sling.spi.resource.provider.ResourceProvider<T>
  - org.apache.sling.api.resource.runtime.dto.ResourceProviderDTO
    - org.apache.sling.api.resource.runtime.dto.ResourceProviderFailureDTO
  - org.apache.sling.api.wrappers.ResourceResolverWrapper (implements org.apache.sling.api.resource.ResourceResolver)
  - org.apache.sling.api.resource.ResourceUtil
  - org.apache.sling.api.resource.ResourceUtil.BatchResourceRemover
  - org.apache.sling.api.resource.ResourceWrapper (implements org.apache.sling.api.resource.Resource)
  - org.apache.sling.api.request.ResponseUtil
  - org.apache.sling.api.resource.runtime.dto.RuntimeDTO
  - jakarta.servlet.ServletRequestWrapper (implements jakarta.servlet.ServletRequest)
    - jakarta.servlet.http.HttpServletRequestWrapper (implements jakarta.servlet.http.HttpServletRequest)
      - org.apache.sling.api.wrappers.SlingJakartaHttpServletRequestWrapper (implements org.apache.sling.api.SlingJakartaHttpServletRequest)
  - javax.servlet.ServletRequestWrapper (implements javax.servlet.ServletRequest)
    - javax.servlet.http.HttpServletRequestWrapper (implements javax.servlet.http.HttpServletRequest)
      - org.apache.sling.api.wrappers.SlingHttpServletRequestWrapper (implements org.apache.sling.api.SlingHttpServletRequest)
  - org.apache.felix.http.jakartawrappers.ServletRequestWrapper (implements jakarta.servlet.ServletRequest)
    - org.apache.felix.http.jakartawrappers.HttpServletRequestWrapper (implements jakarta.servlet.http.HttpServletRequest)
      - org.apache.sling.api.wrappers.JavaxToJakartaRequestWrapper (implements org.apache.sling.api.SlingJakartaHttpServletRequest)
  - org.apache.felix.http.javaxwrappers.ServletRequestWrapper (implements javax.servlet.ServletRequest)
    - org.apache.felix.http.javaxwrappers.HttpServletRequestWrapper (implements javax.servlet.http.HttpServletRequest)
      - org.apache.sling.api.wrappers.JakartaToJavaxRequestWrapper (implements org.apache.sling.api.SlingHttpServletRequest)
  - org.apache.sling.api.servlets.ServletResolverConstants
  - jakarta.servlet.ServletResponseWrapper (implements jakarta.servlet.ServletResponse)
    - jakarta.servlet.http.HttpServletResponseWrapper (implements jakarta.servlet.http.HttpServletResponse)
      - org.apache.sling.api.wrappers.SlingJakartaHttpServletResponseWrapper (implements org.apache.sling.api.SlingJakartaHttpServletResponse)
  - javax.servlet.ServletResponseWrapper (implements javax.servlet.ServletResponse)
    - javax.servlet.http.HttpServletResponseWrapper (implements javax.servlet.http.HttpServletResponse)
      - org.apache.sling.api.wrappers.SlingHttpServletResponseWrapper (implements org.apache.sling.api.SlingHttpServletResponse)
  - org.apache.felix.http.jakartawrappers.ServletResponseWrapper (implements jakarta.servlet.ServletResponse)
    - org.apache.felix.http.jakartawrappers.HttpServletResponseWrapper (implements jakarta.servlet.http.HttpServletResponse)
      - org.apache.sling.api.wrappers.JavaxToJakartaResponseWrapper (implements org.apache.sling.api.SlingJakartaHttpServletResponse)
  - org.apache.felix.http.javaxwrappers.ServletResponseWrapper (implements javax.servlet.ServletResponse)
    - org.apache.felix.http.javaxwrappers.HttpServletResponseWrapper (implements javax.servlet.http.HttpServletResponse)
      - org.apache.sling.api.wrappers.JakartaToJavaxResponseWrapper (implements org.apache.sling.api.SlingHttpServletResponse)
  - org.apache.sling.api.adapter.SlingAdaptable (implements org.apache.sling.api.adapter.Adaptable)
    - org.apache.sling.api.resource.AbstractResource (implements org.apache.sling.api.resource.Resource)
      - org.apache.sling.api.resource.SyntheticResource
        - org.apache.sling.api.resource.NonExistingResource
  - org.apache.sling.api.SlingConstants
  - org.apache.sling.api.request.SlingJakartaRequestEvent
  - org.apache.sling.api.request.SlingRequestEvent
  - org.apache.sling.api.wrappers.SlingRequestPaths
  - org.apache.sling.api.scripting.SlingScriptConstants
  - org.apache.sling.api.uri.SlingUriBuilder
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - org.apache.sling.api.security.AccessSecurityException
      - java.io.IOException
        - org.apache.sling.api.resource.PersistenceException
      - org.apache.sling.api.resource.LoginException
      - java.lang.RuntimeException
        - org.apache.sling.api.SlingException
          - org.apache.sling.api.scripting.InvalidServiceFilterSyntaxException
          - org.apache.sling.api.auth.NoAuthenticationHandlerException
          - org.apache.sling.api.resource.QuerySyntaxException
          - org.apache.sling.api.request.RecursionTooDeepException
          - org.apache.sling.api.resource.ResourceNotFoundException
          - org.apache.sling.api.scripting.ScriptEvaluationException
          - org.apache.sling.api.SlingIOException
          - org.apache.sling.api.SlingServletException
          - org.apache.sling.api.request.TooManyCallsException
  - org.apache.sling.api.wrappers.ValueMapDecorator (implements org.apache.sling.api.resource.ValueMap)
    - org.apache.sling.api.wrappers.DeepReadValueMapDecorator
      - org.apache.sling.api.wrappers.DeepReadModifiableValueMapDecorator (implements org.apache.sling.api.resource.ModifiableValueMap)
    - org.apache.sling.api.wrappers.ModifiableValueMapDecorator (implements org.apache.sling.api.resource.ModifiableValueMap)
  - org.apache.sling.api.wrappers.ValueMapUtil

## Interface Hierarchy

- org.apache.sling.api.adapter.Adaptable
  - org.apache.sling.api.resource.Resource
  - org.apache.sling.api.resource.ResourceResolver (also extends java.io.Closeable)
  - org.apache.sling.api.SlingHttpServletRequest (also extends javax.servlet.http.HttpServletRequest)
  - org.apache.sling.api.SlingHttpServletResponse (also extends javax.servlet.http.HttpServletResponse)
    - org.apache.sling.api.request.builder.SlingHttpServletResponseResult
  - org.apache.sling.api.SlingJakartaHttpServletRequest (also extends jakarta.servlet.http.HttpServletRequest)
  - org.apache.sling.api.SlingJakartaHttpServletResponse (also extends jakarta.servlet.http.HttpServletResponse)
    - org.apache.sling.api.request.builder.SlingJakartaHttpServletResponseResult
- org.apache.sling.api.adapter.AdapterFactory
- org.apache.sling.api.adapter.AdapterManager
- org.apache.sling.api.auth.Authenticator
- java.lang.AutoCloseable
  - java.io.Closeable
    - org.apache.sling.api.resource.ResourceResolver (also extends org.apache.sling.api.adapter.Adaptable)
- org.apache.sling.api.servlets.ErrorHandler
- org.apache.sling.api.resource.external.ExternalizableInputStream
- org.apache.sling.api.resource.observation.ExternalResourceChangeListener
- java.lang.Iterable<T>
  - java.util.Collection<E>
    - java.util.List<E>
      - org.apache.sling.api.resource.observation.ResourceChangeList
- org.apache.sling.api.servlets.JakartaErrorHandler
- java.util.Map<K,V>
  - org.apache.sling.api.request.RequestParameterMap
  - org.apache.sling.api.resource.ValueMap
    - org.apache.sling.api.resource.ModifiableValueMap
    - org.apache.sling.api.resource.PersistableValueMap
- org.apache.sling.spi.resource.provider.ObservationReporter
- org.apache.sling.spi.resource.provider.ObserverConfiguration
- org.apache.sling.api.resource.ParametrizableResourceProvider
- org.apache.sling.spi.resource.provider.ProviderContext
- org.apache.sling.spi.resource.provider.QueryLanguageProvider<T>
- org.apache.sling.api.request.RequestParameter
- org.apache.sling.api.request.RequestPathInfo
  - org.apache.sling.api.uri.SlingUri
- org.apache.sling.api.request.RequestProgressTracker
- org.apache.sling.spi.resource.provider.ResolveContext<T>
- org.apache.sling.api.security.ResourceAccessSecurity
- org.apache.sling.api.resource.observation.ResourceChangeListener
- org.apache.sling.spi.resource.provider.ResourceContext
- org.apache.sling.api.resource.ResourceDecorator
- org.apache.sling.api.resource.mapping.ResourceMapper
- org.apache.sling.api.resource.ResourceProvider
  - org.apache.sling.api.resource.AttributableResourceProvider
  - org.apache.sling.api.resource.DynamicResourceProvider
  - org.apache.sling.api.resource.ModifyingResourceProvider
  - org.apache.sling.api.resource.QueriableResourceProvider
  - org.apache.sling.api.resource.RefreshableResourceProvider
- org.apache.sling.api.resource.ResourceProviderFactory
- org.apache.sling.api.resource.ResourceResolverFactory
- org.apache.sling.api.resource.runtime.RuntimeService
- jakarta.servlet.Servlet
  - org.apache.sling.api.servlets.JakartaOptingServlet
- javax.servlet.Servlet
  - org.apache.sling.api.servlets.OptingServlet
- jakarta.servlet.ServletRequest
  - jakarta.servlet.http.HttpServletRequest
    - org.apache.sling.api.SlingJakartaHttpServletRequest (also extends org.apache.sling.api.adapter.Adaptable)
- javax.servlet.ServletRequest
  - javax.servlet.http.HttpServletRequest
    - org.apache.sling.api.SlingHttpServletRequest (also extends org.apache.sling.api.adapter.Adaptable)
- org.apache.sling.api.servlets.ServletResolver
- jakarta.servlet.ServletResponse
  - jakarta.servlet.http.HttpServletResponse
    - org.apache.sling.api.SlingJakartaHttpServletResponse (also extends org.apache.sling.api.adapter.Adaptable)
      - org.apache.sling.api.request.builder.SlingJakartaHttpServletResponseResult
- javax.servlet.ServletResponse
  - javax.servlet.http.HttpServletResponse
    - org.apache.sling.api.SlingHttpServletResponse (also extends org.apache.sling.api.adapter.Adaptable)
      - org.apache.sling.api.request.builder.SlingHttpServletResponseResult
- org.apache.sling.api.request.builder.SlingHttpServletRequestBuilder
- org.apache.sling.api.request.builder.SlingHttpServletResponseBuilder
- org.apache.sling.api.request.SlingJakartaRequestListener
- org.apache.sling.api.request.SlingRequestListener
- org.apache.sling.api.scripting.SlingScript
- org.apache.sling.api.scripting.SlingScriptHelper
- org.apache.sling.api.scripting.SlingScriptResolver
- java.util.function.Supplier<T>
  - org.apache.sling.api.scripting.LazyBindings.Supplier
- org.apache.sling.api.resource.external.URIProvider

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - org.apache.sling.api.resource.runtime.dto.AuthType
    - org.apache.sling.api.resource.runtime.dto.FailureReason
    - org.apache.sling.api.resource.observation.ResourceChange.ChangeType
    - org.apache.sling.api.request.SlingJakartaRequestEvent.EventType
    - org.apache.sling.api.request.SlingRequestEvent.EventType
    - org.apache.sling.api.resource.external.URIProvider.Operation
    - org.apache.sling.api.resource.external.URIProvider.Scope