You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/10/06 17:45:29 UTC
[isis-app-demo] 01/19: reworks PetOwner_delete to emit domain
events.
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/isis-app-demo.git
commit 80928551f258229e598fedcf9f193a05da20981d
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Oct 5 18:30:49 2021 +0100
reworks PetOwner_delete to emit domain events.
---
.../modules/pets/dom/petowner/PetOwner_delete.java | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/module-pets/src/main/java/petclinic/modules/pets/dom/petowner/PetOwner_delete.java b/module-pets/src/main/java/petclinic/modules/pets/dom/petowner/PetOwner_delete.java
index c7bb58a..57bd75f 100644
--- a/module-pets/src/main/java/petclinic/modules/pets/dom/petowner/PetOwner_delete.java
+++ b/module-pets/src/main/java/petclinic/modules/pets/dom/petowner/PetOwner_delete.java
@@ -6,14 +6,13 @@ import org.apache.isis.applib.annotation.Action;
import org.apache.isis.applib.annotation.ActionLayout;
import org.apache.isis.applib.annotation.Publishing;
import org.apache.isis.applib.annotation.SemanticsOf;
+import org.apache.isis.applib.events.domain.ActionDomainEvent;
import org.apache.isis.applib.services.repository.RepositoryService;
-import org.apache.isis.applib.services.xactn.TransactionService;
import lombok.RequiredArgsConstructor;
-import petclinic.modules.pets.dom.pet.PetRepository;
-
@Action(
+ domainEvent = PetOwner_delete.ActionEvent.class,
semantics = SemanticsOf.NON_IDEMPOTENT_ARE_YOU_SURE,
commandPublishing = Publishing.ENABLED,
executionPublishing = Publishing.ENABLED
@@ -24,17 +23,14 @@ import petclinic.modules.pets.dom.pet.PetRepository;
@RequiredArgsConstructor
public class PetOwner_delete {
+ public static class ActionEvent extends ActionDomainEvent<PetOwner_delete>{}
+
private final PetOwner petOwner;
- public void act(
- ) {
- petRepository.findByPetOwner(petOwner).forEach(repositoryService::remove);
- transactionService.flushTransaction();
+ public void act() {
repositoryService.remove(petOwner);
return;
}
- @Inject PetRepository petRepository;
@Inject RepositoryService repositoryService;
- @Inject TransactionService transactionService;
}