# Hierarchy For All Packages

Package Hierarchies:

- org.apache.sling.models.impl.injectors,
- org.apache.sling.models.impl.model,
- org.apache.sling.models.impl.via

## Class Hierarchy

- java.lang.Object
  - org.apache.sling.models.impl.via.AbstractResourceTypeViaProvider (implements org.apache.sling.models.spi.ViaProvider)
    - org.apache.sling.models.impl.via.ForcedResourceTypeViaProvider
    - org.apache.sling.models.impl.via.ResourceSuperTypeViaProvider
  - org.apache.sling.models.impl.via.BeanPropertyViaProvider (implements org.apache.sling.models.spi.ViaProvider)
  - org.apache.sling.models.impl.injectors.BindingsInjector (implements org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.injectorspecific.StaticInjectAnnotationProcessorFactory, org.apache.sling.models.spi.ValuePreparer)
  - org.apache.sling.models.impl.injectors.ChildResourceInjector (implements org.apache.sling.models.spi.injectorspecific.InjectAnnotationProcessorFactory2, org.apache.sling.models.spi.Injector)
  - org.apache.sling.models.impl.via.ChildResourceViaProvider (implements org.apache.sling.models.spi.ViaProvider)
  - org.apache.sling.models.impl.model.ConstructorParameter
  - org.apache.sling.models.impl.model.ConstructorParameter.FakeAnnotatedElement (implements java.lang.reflect.AnnotatedElement)
  - org.apache.sling.models.impl.model.InjectableField
  - org.apache.sling.models.impl.model.InjectableMethod
  - org.apache.sling.models.impl.model.ModelClass<ModelType>
  - org.apache.sling.models.impl.model.ModelClassConstructor<M>
  - org.apache.sling.models.impl.model.OptionalTypedInjectableElement (implements org.apache.sling.models.impl.model.InjectableElement)
  - org.apache.sling.models.impl.via.OriginalResourceTypeViaProvider (implements org.apache.sling.models.spi.ViaProvider)
  - org.apache.sling.models.impl.injectors.OSGiServiceInjector (implements org.apache.sling.models.spi.AcceptsNullName, org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.injectorspecific.StaticInjectAnnotationProcessorFactory)
  - org.apache.sling.models.impl.injectors.RequestAttributeInjector (implements org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.injectorspecific.StaticInjectAnnotationProcessorFactory)
  - org.apache.sling.models.impl.injectors.ResourcePathInjector (implements org.apache.sling.models.spi.AcceptsNullName, org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.injectorspecific.StaticInjectAnnotationProcessorFactory)
  - org.apache.sling.models.impl.injectors.SelfInjector (implements org.apache.sling.models.spi.AcceptsNullName, org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.injectorspecific.StaticInjectAnnotationProcessorFactory)
  - org.apache.sling.models.impl.injectors.SlingObjectInjector (implements org.apache.sling.models.spi.AcceptsNullName, org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.injectorspecific.StaticInjectAnnotationProcessorFactory)
  - org.apache.sling.models.impl.injectors.ValueMapInjector (implements org.apache.sling.models.spi.injectorspecific.InjectAnnotationProcessorFactory, org.apache.sling.models.spi.Injector, org.apache.sling.models.spi.ValuePreparer)

## Interface Hierarchy

- org.apache.sling.models.impl.model.InjectableElement