# Uses of Interface
org.apache.cayenne.reflect.ClassDescriptor

Packages that use ClassDescriptor
Package
Description
org.apache.cayenne
Contains persistence APIs directly accessible by users.
org.apache.cayenne.access
Contains classes that make up Cayenne ORM stack.
org.apache.cayenne.access.translator.ejbql
org.apache.cayenne.ejbql
org.apache.cayenne.map
Contains O/R mapping classes that store relational database metadata information and map it to Java classes.
org.apache.cayenne.query
Defines standard queries supported by Cayenne and extension mechanism to create custom queries.
org.apache.cayenne.reflect
org.apache.cayenne.reflect.generic
org.apache.cayenne.util
General utility classes.

- ## Uses of ClassDescriptor in org.apache.cayenne

  Methods in org.apache.cayenne that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `static ClassDescriptor`
  Cayenne.`getClassDescriptor(Persistent object)`
  Returns class descriptor for the object or null if the object is not registered with an ObjectContext or descriptor was not found.

- ## Uses of ClassDescriptor in org.apache.cayenne.access

  Methods in org.apache.cayenne.access with parameters of type ClassDescriptor
  Modifier and Type
  Method
  Description
  `List`
  DataContext.`objectsFromDataRows(ClassDescriptor descriptor, List<? extends DataRow> dataRows)`
  Converts a list of DataRows to a List of DataObject registered with this DataContext.

- ## Uses of ClassDescriptor in org.apache.cayenne.access.translator.ejbql

  Methods in org.apache.cayenne.access.translator.ejbql that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `ClassDescriptor`
  EJBQLTranslationContext.`getEntityDescriptor(String id)`
  Looks up entity descriptor for an identifier that can be a compiled expression id or one of the aliases.

- ## Uses of ClassDescriptor in org.apache.cayenne.ejbql

  Methods in org.apache.cayenne.ejbql that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `ClassDescriptor`
  EJBQLCompiledExpression.`getEntityDescriptor(String identifier)`
  Returns a ClassDescriptor for the id variable.
  `ClassDescriptor`
  EJBQLCompiledExpression.`getRootDescriptor()`
  Returns a descriptor of the root of this expression such as entity being fetched or updated.

- ## Uses of ClassDescriptor in org.apache.cayenne.map

  Methods in org.apache.cayenne.map that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `ClassDescriptor`
  DefaultEntityResultSegment.`getClassDescriptor()`
  `ClassDescriptor`
  EntityResolver.`getClassDescriptor(String entityName)`
  Returns ClassDescriptor for the ObjEntity matching the name.
  Constructors in org.apache.cayenne.map with parameters of type ClassDescriptor
  Modifier
  Constructor
  Description
  ``
  `DefaultEntityResultSegment(ClassDescriptor classDescriptor, Map<String,String> fields, int offset)`

- ## Uses of ClassDescriptor in org.apache.cayenne.query

  Methods in org.apache.cayenne.query that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `ClassDescriptor`
  EntityResultSegment.`getClassDescriptor()`
  `ClassDescriptor`
  QueryMetadata.`getClassDescriptor()`
  `ClassDescriptor`
  QueryMetadataProxy.`getClassDescriptor()`

- ## Uses of ClassDescriptor in org.apache.cayenne.reflect

  Classes in org.apache.cayenne.reflect that implement ClassDescriptor
  Modifier and Type
  Class
  Description
  `class`
  `LazyClassDescriptorDecorator`
  A ClassDescriptor wrapper that compiles decorated descriptor lazily on first access.
  `class`
  `PersistentDescriptor`
  A default ClassDescriptor implementation for persistent objects.
  Fields in org.apache.cayenne.reflect declared as ClassDescriptor
  Modifier and Type
  Field
  Description
  `protected ClassDescriptor`
  LazyClassDescriptorDecorator.`descriptor`
  `protected ClassDescriptor`
  BaseProperty.`owner`
  `protected ClassDescriptor`
  PersistentDescriptor.`superclassDescriptor`
  `protected ClassDescriptor`
  BaseArcProperty.`targetDescriptor`
  Fields in org.apache.cayenne.reflect with type parameters of type ClassDescriptor
  Modifier and Type
  Field
  Description
  `protected Map<String,ClassDescriptor>`
  ClassDescriptorMap.`descriptors`
  `protected Map<String,ClassDescriptor>`
  PersistentDescriptor.`subclassDescriptors`
  Methods in org.apache.cayenne.reflect that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `protected ClassDescriptor`
  ClassDescriptorMap.`createDescriptor(String entityName)`
  Creates a new descriptor.
  `protected ClassDescriptor`
  ClassDescriptorMap.`createProxyDescriptor(String entityName)`
  Creates a descriptor wrapper that will compile the underlying descriptor on demand.
  `ClassDescriptor`
  ClassDescriptorFactory.`getDescriptor(String entityName)`
  Returns a ClassDescriptor instance for a given symbolic entity name.
  `ClassDescriptor`
  ClassDescriptorMap.`getDescriptor(String entityName)`
  `ClassDescriptor`
  LazyClassDescriptorDecorator.`getDescriptor()`
  Returns underlying descriptor used to delegate all processing, resolving it if needed.
  `ClassDescriptor`
  PersistentDescriptorFactory.`getDescriptor(String entityName)`
  `protected ClassDescriptor`
  PersistentDescriptorFactory.`getDescriptor(ObjEntity entity, Class<?> entityClass)`
  `ClassDescriptor`
  ClassDescriptor.`getSubclassDescriptor(Class<?> objectClass)`
  Returns the most "specialized" descriptor for a given class.
  `ClassDescriptor`
  LazyClassDescriptorDecorator.`getSubclassDescriptor(Class<?> objectClass)`
  `ClassDescriptor`
  PersistentDescriptor.`getSubclassDescriptor(Class<?> objectClass)`
  `ClassDescriptor`
  ClassDescriptor.`getSuperclassDescriptor()`
  Returns a descriptor of the mapped superclass or null if the descriptor's entity sits at the top of inheritance hierarchy or no inheritance is mapped.
  `ClassDescriptor`
  LazyClassDescriptorDecorator.`getSuperclassDescriptor()`
  `ClassDescriptor`
  PersistentDescriptor.`getSuperclassDescriptor()`
  Returns a descriptor of the mapped superclass or null if the descriptor's entity sits at the top of inheritance hierarchy.
  `ClassDescriptor`
  ArcProperty.`getTargetDescriptor()`
  Returns a ClassDescriptor for the type of graph nodes pointed to by this arc property.
  `ClassDescriptor`
  BaseArcProperty.`getTargetDescriptor()`
  Methods in org.apache.cayenne.reflect with parameters of type ClassDescriptor
  Modifier and Type
  Method
  Description
  `void`
  ClassDescriptorMap.`addDescriptor(String entityName, ClassDescriptor descriptor)`
  Caches descriptor definition.
  `void`
  PersistentDescriptor.`addSubclassDescriptor(String className, ClassDescriptor subclassDescriptor)`
  Adds a subclass descriptor that maps to a given class name.
  `protected Accessor`
  PersistentDescriptorFactory.`createMapKeyAccessor(ObjRelationship relationship, ClassDescriptor targetDescriptor)`
  Creates an accessor to read a map key for a given relationship.
  `void`
  PersistentDescriptor.`setSuperclassDescriptor(ClassDescriptor superclassDescriptor)`
  Constructors in org.apache.cayenne.reflect with parameters of type ClassDescriptor
  Modifier
  Constructor
  Description
  ``
  `BaseArcProperty(ClassDescriptor owner, ClassDescriptor targetDescriptor, Accessor accessor, String reverseName)`
  ``
  `BaseProperty(ClassDescriptor owner, Accessor accessor)`
  ``
  `BaseToManyProperty(ClassDescriptor owner, ClassDescriptor targetDescriptor, Accessor accessor, String reverseName)`
  ``
  `BaseToOneProperty(ClassDescriptor owner, ClassDescriptor targetDescriptor, Accessor accessor, String reverseName)`
  ``
  `SimpleAttributeProperty(ClassDescriptor owner, Accessor accessor, ObjAttribute attribute)`

- ## Uses of ClassDescriptor in org.apache.cayenne.reflect.generic

  Methods in org.apache.cayenne.reflect.generic that return ClassDescriptor
  Modifier and Type
  Method
  Description
  `protected ClassDescriptor`
  DataObjectDescriptorFactory.`getDescriptor(ObjEntity entity, Class<?> entityClass)`

- ## Uses of ClassDescriptor in org.apache.cayenne.util

  Methods in org.apache.cayenne.util with parameters of type ClassDescriptor
  Modifier and Type
  Method
  Description
  `Object`
  ObjectDetachOperation.`detach(Object object, ClassDescriptor descriptor, PrefetchTreeNode prefetchTree)`
  "Detaches" an object from its context by creating an unattached copy.