Package io.micronaut.data.model.runtime
Class RuntimePersistentEntity<T>
java.lang.Object
io.micronaut.data.model.AbstractPersistentEntity
io.micronaut.data.model.runtime.RuntimePersistentEntity<T>
- Type Parameters:
T- The type
- All Implemented Interfaces:
io.micronaut.core.annotation.AnnotationMetadataProvider,io.micronaut.core.annotation.AnnotationSource,io.micronaut.core.naming.Named,PersistentElement,PersistentEntity
public class RuntimePersistentEntity<T>
extends AbstractPersistentEntity
implements PersistentEntity
Runtime implementation of
PersistentEntity that uses pre-computed Introspected bean data and is completely stateless.- Since:
- 1.0
- Author:
- graemerocher
-
Field Summary
Fields inherited from interface io.micronaut.core.annotation.AnnotationSource
EMPTY -
Constructor Summary
ConstructorsConstructorDescriptionRuntimePersistentEntity(io.micronaut.core.beans.BeanIntrospection<T> introspection) Default constructor.RuntimePersistentEntity(Class<T> type) Default constructor. -
Method Summary
Modifier and TypeMethodDescriptionbooleanDoes cascade the persist to any of the associations.booleanDoes cascade the update to any of the associations.A list of the associations for this entity.The composite id.protected RuntimePersistentEntity<T>Obtain an entity for the given type.Returns the identity of the instance.getIdentityByName(String name) Obtains an identity PersistentProperty instance by name.io.micronaut.core.beans.BeanIntrospection<T>getName()The entity name including any package prefix.Returns the parent entity of this entity.A list of properties to be persisted.A list of property names that a persistent.getPropertyByName(String name) Obtains a PersistentProperty instance by name.Returns the version property.booleanbooleanHas composite identity.booleanHas identity.booleanDoes the entity have post-load event listeners.booleanDoes the entity have post-persist event listeners.booleanDoes the entity have post-remove event listeners.booleanDoes the entity have post-update event listeners.booleanDoes the entity have pre-persist event listeners.booleanDoes the entity have pre-remove event listeners.booleanDoes the entity have pre-update event listeners.booleanisOwningEntity(PersistentEntity owner) Returns whether the specified entity asserts ownership over this entity.protected AttributeConverter<Object,Object> resolveConverter(Class<?> converterClass) Resolves a converter instance.toString()Methods inherited from class io.micronaut.data.model.AbstractPersistentEntity
equals, findNamingStrategy, getAnnotationMetadata, getNamingStrategy, getPersistedName, hashCodeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface io.micronaut.core.annotation.AnnotationMetadataProvider
findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, getAnnotationMetadata, getTargetAnnotationMetadata, isAnnotationPresent, isDeclaredAnnotationPresent, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByTypeMethods inherited from interface io.micronaut.core.annotation.AnnotationSource
getAnnotation, getAnnotation, getDeclaredAnnotation, getDeclaredAnnotation, isAnnotationPresent, isDeclaredAnnotationPresent, synthesize, synthesizeDeclaredMethods inherited from interface io.micronaut.data.model.PersistentElement
getPersistedNameMethods inherited from interface io.micronaut.data.model.PersistentEntity
findNamingStrategy, getDecapitalizedName, getEmbedded, getNamingStrategy, getPath, getPropertyByPath, getPropertyPath, getPropertyPath, getRootEntity, getSimpleName, isEmbeddable, isRoot, isVersioned
-
Constructor Details
-
RuntimePersistentEntity
Default constructor.- Parameters:
type- The type
-
RuntimePersistentEntity
Default constructor.- Parameters:
introspection- The introspection
-
-
Method Details
-
resolveConverter
@NonNull protected AttributeConverter<Object,Object> resolveConverter(@NonNull Class<?> converterClass) Resolves a converter instance.- Parameters:
converterClass- The converter class- Returns:
- converter instance
-
cascadesPersist
public boolean cascadesPersist()Does cascade the persist to any of the associations.- Returns:
- True if it does
-
cascadesUpdate
public boolean cascadesUpdate()Does cascade the update to any of the associations.- Returns:
- True if it does
-
hasPrePersistEventListeners
public boolean hasPrePersistEventListeners()Does the entity have pre-persist event listeners.- Returns:
- True if it does
-
hasPreRemoveEventListeners
public boolean hasPreRemoveEventListeners()Does the entity have pre-remove event listeners.- Returns:
- True if it does
-
hasPreUpdateEventListeners
public boolean hasPreUpdateEventListeners()Does the entity have pre-update event listeners.- Returns:
- True if it does
-
hasPostPersistEventListeners
public boolean hasPostPersistEventListeners()Does the entity have post-persist event listeners.- Returns:
- True if it does
-
hasPostUpdateEventListeners
public boolean hasPostUpdateEventListeners()Does the entity have post-update event listeners.- Returns:
- True if it does
-
hasPostRemoveEventListeners
public boolean hasPostRemoveEventListeners()Does the entity have post-remove event listeners.- Returns:
- True if it does
-
hasPostLoadEventListeners
public boolean hasPostLoadEventListeners()Does the entity have post-load event listeners.- Returns:
- True if it does
-
toString
-
getAliasName
- Specified by:
getAliasNamein interfacePersistentEntity- Overrides:
getAliasNamein classAbstractPersistentEntity- Returns:
- A name to use when referring to this element via an alias.
-
getIntrospection
- Returns:
- The underlying introspection.
-
getName
Description copied from interface:PersistentEntityThe entity name including any package prefix.- Specified by:
getNamein interfaceio.micronaut.core.naming.Named- Specified by:
getNamein interfacePersistentEntity- Returns:
- The entity name
-
hasCompositeIdentity
public boolean hasCompositeIdentity()Description copied from interface:PersistentEntityHas composite identity.- Specified by:
hasCompositeIdentityin interfacePersistentEntity- Returns:
- The true if composite identity present
-
hasIdentity
public boolean hasIdentity()Description copied from interface:PersistentEntityHas identity.- Specified by:
hasIdentityin interfacePersistentEntity- Returns:
- The true if identity present
-
getCompositeIdentity
Description copied from interface:PersistentEntityThe composite id.- Specified by:
getCompositeIdentityin interfacePersistentEntity- Returns:
- The composite id or null if there isn't one
-
getIdentity
Description copied from interface:PersistentEntityReturns the identity of the instance.- Specified by:
getIdentityin interfacePersistentEntity- Returns:
- The identity or null if there isn't one
-
getVersion
Description copied from interface:PersistentEntityReturns the version property.- Specified by:
getVersionin interfacePersistentEntity- Returns:
- the property
-
getPersistentProperties
Description copied from interface:PersistentEntityA list of properties to be persisted.- Specified by:
getPersistentPropertiesin interfacePersistentEntity- Returns:
- A list of PersistentProperty instances
-
getAssociations
Description copied from interface:PersistentEntityA list of the associations for this entity. This is typically a subset of the list returned byPersistentEntity.getPersistentProperties()- Specified by:
getAssociationsin interfacePersistentEntity- Returns:
- A list of associations
-
getPropertyByName
Description copied from interface:PersistentEntityObtains a PersistentProperty instance by name.- Specified by:
getPropertyByNamein interfacePersistentEntity- Parameters:
name- The name of the property- Returns:
- The PersistentProperty or null if it doesn't exist
-
getIdentityByName
Description copied from interface:PersistentEntityObtains an identity PersistentProperty instance by name.- Specified by:
getIdentityByNamein interfacePersistentEntity- Parameters:
name- The name of the identity property- Returns:
- The PersistentProperty or null if it doesn't exist
-
getPersistentPropertyNames
Description copied from interface:PersistentEntityA list of property names that a persistent.- Specified by:
getPersistentPropertyNamesin interfacePersistentEntity- Returns:
- A List of strings
-
isOwningEntity
Description copied from interface:PersistentEntityReturns whether the specified entity asserts ownership over this entity.- Specified by:
isOwningEntityin interfacePersistentEntity- Parameters:
owner- The owning entity- Returns:
- True if it does own this entity
-
getParentEntity
Description copied from interface:PersistentEntityReturns the parent entity of this entity.- Specified by:
getParentEntityin interfacePersistentEntity- Returns:
- The ParentEntity instance
-
getEntity
Obtain an entity for the given type.- Parameters:
type- The type- Returns:
- The entity
- Throws:
io.micronaut.core.beans.exceptions.IntrospectionException- if the entity doesn't exist
-
getConstructorArguments
- Returns:
- The constructor arguments.
-
hasAutoPopulatedProperties
public boolean hasAutoPopulatedProperties()- Returns:
- Returns true if the entity has auto-populated properties.
-