Class ReactiveEntityOperations<T,Exc extends Exception>
java.lang.Object
io.micronaut.data.runtime.operations.internal.EntityOperations<T,Exc>
io.micronaut.data.runtime.operations.internal.ReactiveEntityOperations<T,Exc>
- Type Parameters:
T
- The entity typeExc
- The exception
- Direct Known Subclasses:
AbstractReactiveEntityOperations
@Internal
public abstract class ReactiveEntityOperations<T,Exc extends Exception>
extends EntityOperations<T,Exc>
The reactive entity operations container.
- Since:
- 3.3
- Author:
- Denis Stepanov
-
Field Summary
Modifier and TypeFieldDescriptionprotected final io.micronaut.core.convert.ConversionService
protected final EntityEventListener<Object>
protected final RuntimePersistentEntity<T>
-
Constructor Summary
ConstructorDescriptionReactiveEntityOperations
(EntityEventListener<Object> entityEventListener, RuntimePersistentEntity<T> persistentEntity, io.micronaut.core.convert.ConversionService conversionService) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract void
cascadePost
(Relation.Cascade cascadeType) Cascade post operation.protected abstract void
cascadePre
(Relation.Cascade cascadeType) Cascade pre operation.protected void
checkOptimisticLocking
(long expected, long received) Compare the expected modifications and the received rows count.protected abstract void
Collect auto-populated values before pre-triggers modifies them.void
delete()
Delete one operation.protected abstract void
execute()
Execute update.protected void
abstract reactor.core.publisher.Mono<T>
void
persist()
Persist one operation.protected abstract void
Trigger post-actions onEntityEventContext
.protected void
Trigger the post persist event.protected void
Trigger the post remove event.protected void
Trigger the post update event.protected abstract boolean
Trigger pre-actions onEntityEventContext
.protected boolean
Trigger the pre persist event.protected boolean
Trigger the pre remove event.protected boolean
Trigger the pre update event.void
update()
Update one operation.protected T
updateEntityId
(io.micronaut.core.beans.BeanProperty<T, Object> identity, T entity, Object id) Update entity id.abstract void
Veto an entity.
-
Field Details
-
entityEventListener
-
persistentEntity
-
conversionService
protected final io.micronaut.core.convert.ConversionService conversionService
-
-
Constructor Details
-
ReactiveEntityOperations
public ReactiveEntityOperations(EntityEventListener<Object> entityEventListener, RuntimePersistentEntity<T> persistentEntity, io.micronaut.core.convert.ConversionService conversionService)
-
-
Method Details
-
getEntity
- Returns:
- The entity
-
checkOptimisticLocking
protected void checkOptimisticLocking(long expected, long received) Compare the expected modifications and the received rows count. If not equals throwOptimisticLockException
.- Parameters:
expected
- The expected valuereceived
- THe received value
-
persist
public void persist()Persist one operation. -
delete
public void delete()Delete one operation. -
update
public void update()Update one operation. -
failed
- Throws:
DataAccessException
-
cascadePre
Cascade pre operation.- Parameters:
cascadeType
- The cascade type
-
cascadePost
Cascade post operation.- Parameters:
cascadeType
- The cascade type
-
collectAutoPopulatedPreviousValues
protected abstract void collectAutoPopulatedPreviousValues()Collect auto-populated values before pre-triggers modifies them. -
execute
Execute update. -
veto
Veto an entity.- Parameters:
predicate
- The veto predicate
-
updateEntityId
protected T updateEntityId(io.micronaut.core.beans.BeanProperty<T, Object> identity, T entity, Object id) Update entity id.- Parameters:
identity
- The identity property.entity
- The entity instanceid
- The id instance- Returns:
- The entity instance
-
triggerPrePersist
protected boolean triggerPrePersist()Trigger the pre persist event.- Returns:
- true if operation was vetoed
-
triggerPreUpdate
protected boolean triggerPreUpdate()Trigger the pre update event.- Returns:
- true if operation was vetoed
-
triggerPreRemove
protected boolean triggerPreRemove()Trigger the pre remove event.- Returns:
- true if operation was vetoed
-
triggerPostUpdate
protected void triggerPostUpdate()Trigger the post update event. -
triggerPostRemove
protected void triggerPostRemove()Trigger the post remove event. -
triggerPostPersist
protected void triggerPostPersist()Trigger the post persist event. -
triggerPre
Trigger pre-actions onEntityEventContext
.- Parameters:
fn
- The entity context function- Returns:
- true if operation was vetoed
-
triggerPost
Trigger post-actions onEntityEventContext
.- Parameters:
fn
- The entity context function
-