Package io.jmix.core.entity
Class NoIdEntityEntry
java.lang.Object
io.jmix.core.entity.BaseEntityEntry
io.jmix.core.entity.NoIdEntityEntry
- All Implemented Interfaces:
EntityEntry,Serializable,Cloneable
An
Used by enhancing process when
EntityEntry implementation for model objects without identifiers.Used by enhancing process when
JmixEntity does not include any of annotations:
IdEmbeddedIdJmixId
Such entities should not be saved in any persistent storage.
- See Also:
-
Field Summary
Fields inherited from class io.jmix.core.entity.BaseEntityEntry
DETACHED, entityValuesProviders, extraStateMap, MANAGED, NEW, PROPERTY_CHANGE_LISTENERS_INITIAL_CAPACITY, propertyChangeListeners, REMOVED, securityState, source, state -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcopy(EntityEntry entry) Copies the state of entity entry.GeneratedId will be determined at enhancing time as follows: primary key (Id,EmbeddedIdorJmixIdattribute) will be used if it hasJmixGeneratedValueannotation, any other UUIDJmixGeneratedValueproperty will be chosen if primary key doesn't haveJmixGeneratedValueannotation, primary key or some synthetic id will be used if there is noJmixGeneratedValuesatisfiyng conditions below (seeEntityEntryimplementations for details).
This algorithm used forBaseEntityEntryandNullableIdEntityEntry.inthashCode()voidsetEntityId(Object id) voidsetGeneratedId(Object id) GeneratedId needed to identify entity, including hashCode calculation (seeEntityInternals.hashCode(Entity)).Methods inherited from class io.jmix.core.entity.BaseEntityEntry
addExtraState, addPropertyChangeListener, firePropertyChanged, getAllExtraState, getAttributeValue, getExtraState, getSecurityState, getSource, isDetached, isManaged, isNew, isRemoved, removeAllListeners, removePropertyChangeListener, setAttributeValue, setDetached, setManaged, setNew, setRemoved, setSecurityStateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.jmix.core.EntityEntry
getGeneratedId, isEmbeddable, setAttributeValue
-
Constructor Details
-
NoIdEntityEntry
-
-
Method Details
-
hashCode
public int hashCode()- Overrides:
hashCodein classBaseEntityEntry
-
getEntityId
-
setEntityId
-
getGeneratedIdOrNull
Description copied from interface:EntityEntryGeneratedId will be determined at enhancing time as follows:- primary key (
Id,EmbeddedIdorJmixIdattribute) will be used if it hasJmixGeneratedValueannotation, - any other UUID
JmixGeneratedValueproperty will be chosen if primary key doesn't haveJmixGeneratedValueannotation, - primary key or some synthetic id will be used if there is no
JmixGeneratedValuesatisfiyng conditions below (seeEntityEntryimplementations for details).
This algorithm used forBaseEntityEntryandNullableIdEntityEntry. See implementing classes description to clarify whether each of them will be used (directly or through subclass creation during enhancing process) - primary key (
-
setGeneratedId
Description copied from interface:EntityEntryGeneratedId needed to identify entity, including hashCode calculation (seeEntityInternals.hashCode(Entity)). Thus it has to be copied at the very beginning of entity copy creation. -
copy
Description copied from interface:EntityEntryCopies the state of entity entry.- Specified by:
copyin interfaceEntityEntry- Overrides:
copyin classBaseEntityEntry
-