Class JpaComponentEntity

java.lang.Object
org.keycloak.models.map.common.UpdatableEntity.Impl
org.keycloak.models.map.storage.jpa.realm.entity.JpaComponentEntity
All Implemented Interfaces:
Serializable, AbstractEntity, UpdatableEntity, MapComponentEntity, JpaChildEntity<JpaRealmEntity>, JpaRootEntity, JpaRootVersionedEntity

@Entity public class JpaComponentEntity extends UpdatableEntity.Impl implements MapComponentEntity, JpaRootVersionedEntity, JpaChildEntity<JpaRealmEntity>
JPA MapComponentEntity implementation. Some fields are annotated with @Column(insertable = false, updatable = false) to indicate that they are automatically generated from json fields. As such, these fields are non-insertable and non-updatable.

Components are independent (i.e. a component doesn't depend on another component) and can be manipulated directly via the component endpoints.

By implementing JpaRootVersionedEntity, this entity will enforce optimistic locking, which can lead to OptimisticLockException if more than one thread attempts to modify the same component at the same time.

Author:
Stefan Guilhen
See Also: