# Hierarchy For Package org.apache.cayenne.reflect

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.apache.cayenne.reflect.BaseProperty (implements org.apache.cayenne.reflect.PropertyDescriptor)
    - org.apache.cayenne.reflect.BaseArcProperty (implements org.apache.cayenne.reflect.ArcProperty)
      - org.apache.cayenne.reflect.BaseToManyProperty (implements org.apache.cayenne.reflect.ToManyProperty)
      - org.apache.cayenne.reflect.BaseToOneProperty (implements org.apache.cayenne.reflect.ToOneProperty)
    - org.apache.cayenne.reflect.SimpleAttributeProperty (implements org.apache.cayenne.reflect.AttributeProperty)
  - org.apache.cayenne.reflect.BeanAccessor (implements org.apache.cayenne.reflect.Accessor)
  - org.apache.cayenne.reflect.ClassDescriptorMap
  - org.apache.cayenne.reflect.Converter<T>
    - org.apache.cayenne.reflect.ToAnyConverter<T>
  - org.apache.cayenne.reflect.ConverterFactory
  - org.apache.cayenne.reflect.EmbeddedFieldAccessor (implements org.apache.cayenne.reflect.Accessor)
  - org.apache.cayenne.reflect.FieldAccessor (implements org.apache.cayenne.reflect.Accessor)
  - org.apache.cayenne.reflect.FieldEmbeddableDescriptor (implements org.apache.cayenne.reflect.EmbeddableDescriptor)
  - org.apache.cayenne.reflect.IdMapKeyAccessor (implements org.apache.cayenne.reflect.Accessor)
  - org.apache.cayenne.reflect.LazyClassDescriptorDecorator (implements org.apache.cayenne.reflect.ClassDescriptor)
  - org.apache.cayenne.reflect.LifecycleCallbackRegistry
  - org.apache.cayenne.reflect.MapAccessor (implements org.apache.cayenne.reflect.Accessor)
  - org.apache.cayenne.reflect.PersistentDescriptor (implements org.apache.cayenne.reflect.ClassDescriptor)
  - org.apache.cayenne.reflect.PersistentDescriptorFactory (implements org.apache.cayenne.reflect.ClassDescriptorFactory)
  - org.apache.cayenne.reflect.PojoMapper<T> (implements java.util.function.Function<T,R>)
  - org.apache.cayenne.reflect.PropertyAccessor (implements org.apache.cayenne.reflect.Accessor)
  - org.apache.cayenne.reflect.PropertyUtils
  - org.apache.cayenne.reflect.SingletonFaultFactory (implements org.apache.cayenne.reflect.FaultFactory)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - org.apache.cayenne.CayenneRuntimeException
          - org.apache.cayenne.reflect.PropertyException
          - org.apache.cayenne.reflect.UnresolvablePathException

## Interface Hierarchy

- org.apache.cayenne.reflect.AccessorFactory
- org.apache.cayenne.reflect.ClassDescriptor
- org.apache.cayenne.reflect.ClassDescriptorFactory
- org.apache.cayenne.reflect.EmbeddableDescriptor
- org.apache.cayenne.reflect.FaultFactory
- org.apache.cayenne.reflect.PropertyDescriptor
  - org.apache.cayenne.reflect.ArcProperty
    - org.apache.cayenne.reflect.ToManyProperty
      - org.apache.cayenne.reflect.ToManyMapProperty
    - org.apache.cayenne.reflect.ToOneProperty
  - org.apache.cayenne.reflect.AttributeProperty
  - org.apache.cayenne.reflect.Property
- org.apache.cayenne.reflect.PropertyVisitor
- java.io.Serializable
  - org.apache.cayenne.reflect.Accessor