1

Merge remote-tracking branch 'origin/Services' into Services

# Conflicts:
#	src/main/java/mops/gruppen2/services/GruppenService.java
This commit is contained in:
LukasEttel
2020-03-06 15:53:34 +01:00
3 changed files with 34 additions and 0 deletions

View File

@ -6,6 +6,7 @@ import mops.gruppen2.events.AddUser;
import mops.gruppen2.events.CreateGroupEvent; import mops.gruppen2.events.CreateGroupEvent;
import mops.gruppen2.events.UpdateGroupDescriptionEvent; import mops.gruppen2.events.UpdateGroupDescriptionEvent;
import mops.gruppen2.events.UpdateGroupTitleEvent; import mops.gruppen2.events.UpdateGroupTitleEvent;
import mops.gruppen2.events.DeleteUserEvent;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -43,5 +44,15 @@ public class Gruppe extends Aggregat {
public void applyEvent(UpdateGroupDescriptionEvent event) { public void applyEvent(UpdateGroupDescriptionEvent event) {
this.beschreibung = event.getBeschreibung(); this.beschreibung = event.getBeschreibung();
this.teilnehmersList = new ArrayList<>();
}
public void applyEvent(DeleteUserEvent event) {
for (Teilnehmer teilnehmer: teilnehmersList) {
if (teilnehmer.getId().equals(event.getUser_id())) {
this.teilnehmersList.remove(teilnehmer);
break;
}
}
} }
} }

View File

@ -0,0 +1,11 @@
package mops.gruppen2.events;
import lombok.Getter;
@Getter
public class DeleteUserEvent extends Event{
public DeleteUserEvent(long id, long gruppe_id, long user_id) {
super(id, gruppe_id, user_id);
}
}

View File

@ -12,6 +12,18 @@ import java.util.List;
@Service @Service
public class GruppenService { public class GruppenService {
CreateGroupEvent createGroupEvent = new CreateGroupEvent(1L,1L,1L,"hello", "foo");
AddUser addUser = new AddUser(1L, 1L, 1L, "jens","bendiest","jb@gmail.ru");
DeleteUserEvent deleteUserEvent = new DeleteUserEvent(1L, 1L, 1L);
public GruppenService(){
List<Event> eventList = new ArrayList<>();
eventList.add(createGroupEvent);
eventList.add(addUser);
eventList.add(deleteUserEvent);
Gruppe newGroup = buildGroup(eventList);
}
Gruppe buildGroup(List<Event> eventList){ Gruppe buildGroup(List<Event> eventList){
Gruppe newGroup = new Gruppe(); Gruppe newGroup = new Gruppe();
eventList.forEach(newGroup::applyEvent); eventList.forEach(newGroup::applyEvent);