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:
Id
EmbeddedId
JmixId
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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
copy
(EntityEntry entry) Copies the state of entity entry.GeneratedId will be determined at enhancing time as follows: primary key (Id
,EmbeddedId
orJmixId
attribute) will be used if it hasJmixGeneratedValue
annotation, any other UUIDJmixGeneratedValue
property will be chosen if primary key doesn't haveJmixGeneratedValue
annotation, primary key or some synthetic id will be used if there is noJmixGeneratedValue
satisfiyng conditions below (seeEntityEntry
implementations for details).
This algorithm used forBaseEntityEntry
andNullableIdEntityEntry
.int
hashCode()
void
setEntityId
(Object id) void
setGeneratedId
(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, setSecurityState
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.jmix.core.EntityEntry
getGeneratedId, isEmbeddable, setAttributeValue
-
Constructor Details
-
NoIdEntityEntry
-
-
Method Details
-
hashCode
public int hashCode()- Overrides:
hashCode
in classBaseEntityEntry
-
getEntityId
-
setEntityId
-
getGeneratedIdOrNull
Description copied from interface:EntityEntry
GeneratedId will be determined at enhancing time as follows:- primary key (
Id
,EmbeddedId
orJmixId
attribute) will be used if it hasJmixGeneratedValue
annotation, - any other UUID
JmixGeneratedValue
property will be chosen if primary key doesn't haveJmixGeneratedValue
annotation, - primary key or some synthetic id will be used if there is no
JmixGeneratedValue
satisfiyng conditions below (seeEntityEntry
implementations for details).
This algorithm used forBaseEntityEntry
andNullableIdEntityEntry
. 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:EntityEntry
GeneratedId 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:EntityEntry
Copies the state of entity entry.- Specified by:
copy
in interfaceEntityEntry
- Overrides:
copy
in classBaseEntityEntry
-