renaming + better use of wrappers
This commit is contained in:
@ -1,5 +1,7 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.exception.EventException;
|
||||
@ -14,14 +16,20 @@ import mops.gruppen2.domain.model.User;
|
||||
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class AddUserEvent extends Event {
|
||||
|
||||
@JsonProperty("givenname")
|
||||
String givenname;
|
||||
|
||||
@JsonProperty("familyname")
|
||||
String familyname;
|
||||
|
||||
@JsonProperty("email")
|
||||
String email;
|
||||
|
||||
public AddUserEvent(Group group, User user) {
|
||||
super(group.getId(), user.getId());
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
givenname = user.getGivenname();
|
||||
familyname = user.getFamilyname();
|
||||
email = user.getEmail();
|
||||
@ -29,11 +37,11 @@ public class AddUserEvent extends Event {
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) throws EventException {
|
||||
ValidationHelper.throwIfMember(group, new User(userId));
|
||||
ValidationHelper.throwIfMember(group, new User(userid));
|
||||
ValidationHelper.throwIfGroupFull(group);
|
||||
|
||||
group.getMembers().put(userId, new User(userId, givenname, familyname, email));
|
||||
group.getRoles().put(userId, Role.MEMBER);
|
||||
group.getMembers().put(userid, new User(userid, givenname, familyname, email));
|
||||
group.getRoles().put(userid, Role.MEMBER);
|
||||
|
||||
log.trace("\t\t\t\t\tNeue Members: {}", group.getMembers());
|
||||
log.trace("\t\t\t\t\tNeue Rollen: {}", group.getRoles());
|
||||
|
@ -1,29 +1,36 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.model.Group;
|
||||
import mops.gruppen2.domain.model.Type;
|
||||
import mops.gruppen2.domain.model.User;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor// Value generiert den allArgsConstrucot nur, wenn keiner explizit angegeben ist
|
||||
public class CreateGroupEvent extends Event {
|
||||
|
||||
UUID groupParent;
|
||||
@JsonProperty("parent")
|
||||
UUID parent;
|
||||
|
||||
@JsonProperty("type")
|
||||
Type type;
|
||||
|
||||
public CreateGroupEvent(UUID groupId, String userId, UUID parent, Type type) {
|
||||
super(groupId, userId);
|
||||
groupParent = parent;
|
||||
public CreateGroupEvent(UUID groupId, User user, UUID parent, Type type) {
|
||||
super(groupId, user.getUserid());
|
||||
this.parent = parent;
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) {
|
||||
group.setId(groupId);
|
||||
group.setParent(groupParent);
|
||||
group.setGroupid(groupid);
|
||||
group.setParent(parent);
|
||||
group.setType(type);
|
||||
|
||||
log.trace("\t\t\t\t\tNeue Gruppe: {}", group.toString());
|
||||
|
@ -1,5 +1,6 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.model.Group;
|
||||
@ -7,10 +8,11 @@ import mops.gruppen2.domain.model.User;
|
||||
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class DeleteGroupEvent extends Event {
|
||||
|
||||
public DeleteGroupEvent(Group group, User user) {
|
||||
super(group.getId(), user.getId());
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -21,7 +23,7 @@ public class DeleteGroupEvent extends Event {
|
||||
group.setDescription(null);
|
||||
group.setType(null);
|
||||
group.setParent(null);
|
||||
group.setUserLimit(null);
|
||||
group.setLimit(null);
|
||||
|
||||
log.trace("\t\t\t\t\tGelöschte Gruppe: {}", group);
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.exception.EventException;
|
||||
@ -12,18 +13,19 @@ import mops.gruppen2.domain.model.User;
|
||||
*/
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class DeleteUserEvent extends Event {
|
||||
|
||||
public DeleteUserEvent(Group group, User user) {
|
||||
super(group.getId(), user.getId());
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) throws EventException {
|
||||
ValidationHelper.throwIfNoMember(group, new User(userId));
|
||||
ValidationHelper.throwIfNoMember(group, new User(userid));
|
||||
|
||||
group.getMembers().remove(userId);
|
||||
group.getRoles().remove(userId);
|
||||
group.getMembers().remove(userid);
|
||||
group.getRoles().remove(userid);
|
||||
|
||||
log.trace("\t\t\t\t\tNeue Members: {}", group.getMembers());
|
||||
log.trace("\t\t\t\t\tNeue Rollen: {}", group.getRoles());
|
||||
|
@ -1,5 +1,6 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.fasterxml.jackson.annotation.JsonSubTypes;
|
||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -12,32 +13,29 @@ import mops.gruppen2.domain.model.Group;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
||||
@Log4j2
|
||||
@JsonTypeInfo(
|
||||
use = JsonTypeInfo.Id.NAME,
|
||||
property = "type"
|
||||
)
|
||||
@JsonSubTypes({
|
||||
@JsonSubTypes.Type(value = AddUserEvent.class, name = "AddUserEvent"),
|
||||
@JsonSubTypes.Type(value = CreateGroupEvent.class, name = "CreateGroupEvent"),
|
||||
@JsonSubTypes.Type(value = DeleteUserEvent.class, name = "DeleteUserEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateGroupDescriptionEvent.class, name = "UpdateGroupDescriptionEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateGroupTitleEvent.class, name = "UpdateGroupTitleEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateRoleEvent.class, name = "UpdateRoleEvent"),
|
||||
@JsonSubTypes.Type(value = DeleteGroupEvent.class, name = "DeleteGroupEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateUserLimitEvent.class, name = "UpdateUserLimitEvent")
|
||||
})
|
||||
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
|
||||
@JsonSubTypes({@JsonSubTypes.Type(value = AddUserEvent.class, name = "AddUserEvent"),
|
||||
@JsonSubTypes.Type(value = CreateGroupEvent.class, name = "CreateGroupEvent"),
|
||||
@JsonSubTypes.Type(value = DeleteUserEvent.class, name = "DeleteUserEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateGroupDescriptionEvent.class, name = "UpdateGroupDescriptionEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateGroupTitleEvent.class, name = "UpdateGroupTitleEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateRoleEvent.class, name = "UpdateRoleEvent"),
|
||||
@JsonSubTypes.Type(value = DeleteGroupEvent.class, name = "DeleteGroupEvent"),
|
||||
@JsonSubTypes.Type(value = UpdateUserLimitEvent.class, name = "UpdateUserLimitEvent")})
|
||||
@Getter
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor // Lombok needs a default constructor in the base class
|
||||
public abstract class Event {
|
||||
|
||||
protected UUID groupId;
|
||||
protected String userId;
|
||||
@JsonProperty("groupid")
|
||||
protected UUID groupid;
|
||||
|
||||
@JsonProperty("userid")
|
||||
protected String userid;
|
||||
|
||||
public Group apply(Group group) throws EventException {
|
||||
checkGroupIdMatch(group.getId());
|
||||
checkGroupIdMatch(group.getGroupid());
|
||||
|
||||
log.trace("Event angewendet:\t{}", this);
|
||||
|
||||
@ -52,7 +50,7 @@ public abstract class Event {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.groupId.equals(groupId)) {
|
||||
if (!groupid.equals(groupId)) {
|
||||
throw new GroupIdMismatchException(getClass().toString());
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.model.Description;
|
||||
@ -11,18 +13,20 @@ import mops.gruppen2.domain.model.User;
|
||||
*/
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class UpdateGroupDescriptionEvent extends Event {
|
||||
|
||||
Description groupDescription;
|
||||
@JsonProperty("desc")
|
||||
Description description;
|
||||
|
||||
public UpdateGroupDescriptionEvent(Group group, User user, Description groupDescription) {
|
||||
super(group.getId(), user.getId());
|
||||
this.groupDescription = groupDescription;
|
||||
public UpdateGroupDescriptionEvent(Group group, User user, Description description) {
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) {
|
||||
group.setDescription(groupDescription);
|
||||
group.setDescription(description);
|
||||
|
||||
log.trace("\t\t\t\t\tNeue Beschreibung: {}", group.getDescription());
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.model.Group;
|
||||
@ -11,18 +13,20 @@ import mops.gruppen2.domain.model.User;
|
||||
*/
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class UpdateGroupTitleEvent extends Event {
|
||||
|
||||
Title newGroupTitle;
|
||||
@JsonProperty("title")
|
||||
Title title;
|
||||
|
||||
public UpdateGroupTitleEvent(Group group, User user, Title newGroupTitle) {
|
||||
super(group.getId(), user.getId());
|
||||
this.newGroupTitle = newGroupTitle;
|
||||
public UpdateGroupTitleEvent(Group group, User user, Title title) {
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) {
|
||||
group.setTitle(newGroupTitle);
|
||||
group.setTitle(title);
|
||||
|
||||
log.trace("\t\t\t\t\tNeuer Titel: {}", group.getTitle());
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.exception.UserNotFoundException;
|
||||
@ -8,32 +10,27 @@ import mops.gruppen2.domain.model.Group;
|
||||
import mops.gruppen2.domain.model.Role;
|
||||
import mops.gruppen2.domain.model.User;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* Aktualisiert die Gruppenrolle eines Teilnehmers.
|
||||
*/
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class UpdateRoleEvent extends Event {
|
||||
|
||||
Role newRole;
|
||||
@JsonProperty("role")
|
||||
Role role;
|
||||
|
||||
public UpdateRoleEvent(UUID groupId, String userId, Role newRole) {
|
||||
super(groupId, userId);
|
||||
this.newRole = newRole;
|
||||
}
|
||||
|
||||
public UpdateRoleEvent(Group group, User user, Role newRole) {
|
||||
super(group.getId(), user.getId());
|
||||
this.newRole = newRole;
|
||||
public UpdateRoleEvent(Group group, User user, Role tole) {
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
role = tole;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) throws UserNotFoundException {
|
||||
ValidationHelper.throwIfNoMember(group, new User(userId));
|
||||
ValidationHelper.throwIfNoMember(group, new User(userid));
|
||||
|
||||
group.getRoles().put(userId, newRole);
|
||||
group.getRoles().put(userid, role);
|
||||
|
||||
log.trace("\t\t\t\t\tNeue Rollen: {}", group.getRoles());
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package mops.gruppen2.domain.event;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Value;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import mops.gruppen2.domain.exception.BadParameterException;
|
||||
@ -10,23 +12,25 @@ import mops.gruppen2.domain.model.User;
|
||||
|
||||
@Log4j2
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
public class UpdateUserLimitEvent extends Event {
|
||||
|
||||
Limit userLimit;
|
||||
@JsonProperty("limit")
|
||||
Limit limit;
|
||||
|
||||
public UpdateUserLimitEvent(Group group, User user, Limit userLimit) {
|
||||
super(group.getId(), user.getId());
|
||||
this.userLimit = userLimit;
|
||||
public UpdateUserLimitEvent(Group group, User user, Limit limit) {
|
||||
super(group.getGroupid(), user.getUserid());
|
||||
this.limit = limit;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void applyEvent(Group group) throws EventException {
|
||||
if (userLimit.getUserLimit() < group.getMembers().size()) {
|
||||
if (limit.getUserLimit() < group.getMembers().size()) {
|
||||
throw new BadParameterException("Teilnehmerlimit zu klein.");
|
||||
}
|
||||
|
||||
group.setUserLimit(userLimit);
|
||||
group.setLimit(limit);
|
||||
|
||||
log.trace("\t\t\t\t\tNeues UserLimit: {}", group.getUserLimit());
|
||||
log.trace("\t\t\t\t\tNeues UserLimit: {}", group.getLimit());
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,9 @@ public final class JsonHelper {
|
||||
|
||||
public static String serializeEvent(Event event) throws JsonProcessingException {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
return mapper.writeValueAsString(event);
|
||||
String payload = mapper.writeValueAsString(event);
|
||||
log.trace(payload);
|
||||
return payload;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -28,7 +28,7 @@ public final class ValidationHelper {
|
||||
* Überprüft, ob ein User in einer Gruppe teilnimmt.
|
||||
*/
|
||||
public static boolean checkIfMember(Group group, User user) {
|
||||
return group.getMembers().containsKey(user.getId());
|
||||
return group.getMembers().containsKey(user.getUserid());
|
||||
}
|
||||
|
||||
public static boolean checkIfLastMember(User user, Group group) {
|
||||
@ -39,7 +39,7 @@ public final class ValidationHelper {
|
||||
* Überprüft, ob eine Gruppe voll ist.
|
||||
*/
|
||||
public static boolean checkIfGroupFull(Group group) {
|
||||
return group.getMembers().size() >= group.getUserLimit().getUserLimit();
|
||||
return group.getMembers().size() >= group.getLimit().getUserLimit();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -54,7 +54,7 @@ public final class ValidationHelper {
|
||||
*/
|
||||
public static boolean checkIfAdmin(Group group, User user) {
|
||||
if (checkIfMember(group, user)) {
|
||||
return group.getRoles().get(user.getId()) == ADMIN;
|
||||
return group.getRoles().get(user.getUserid()) == ADMIN;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
@ -1,20 +1,21 @@
|
||||
package mops.gruppen2.domain.model;
|
||||
|
||||
import lombok.Getter;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Value;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
@Value
|
||||
@Getter
|
||||
//@AllArgsConstructor
|
||||
//@NoArgsConstructor
|
||||
public class Description {
|
||||
|
||||
//private Description() {}
|
||||
|
||||
@NotBlank
|
||||
@Size(min = 4, max = 512)
|
||||
@JsonProperty("desc")
|
||||
String groupDescription;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return groupDescription;
|
||||
}
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ import java.util.UUID;
|
||||
public class Group {
|
||||
|
||||
@EqualsAndHashCode.Include
|
||||
private UUID id;
|
||||
private UUID groupid;
|
||||
|
||||
@ToString.Exclude
|
||||
private UUID parent;
|
||||
@ -30,7 +30,7 @@ public class Group {
|
||||
private Description description;
|
||||
|
||||
@ToString.Exclude
|
||||
private Limit userLimit = new Limit(1); // Add initial user
|
||||
private Limit limit = new Limit(1); // Add initial user
|
||||
|
||||
@ToString.Exclude
|
||||
private final Map<String, User> members = new HashMap<>();
|
||||
|
@ -1,19 +1,21 @@
|
||||
package mops.gruppen2.domain.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Value;
|
||||
|
||||
import javax.validation.constraints.Max;
|
||||
import javax.validation.constraints.Min;
|
||||
|
||||
@Value
|
||||
//@Getter
|
||||
//@AllArgsConstructor
|
||||
//@NoArgsConstructor
|
||||
public class Limit {
|
||||
|
||||
//private Limit() {}
|
||||
|
||||
@Min(1)
|
||||
@Max(999_999)
|
||||
@JsonProperty("limit")
|
||||
long userLimit;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.valueOf(userLimit);
|
||||
}
|
||||
}
|
||||
|
@ -1,19 +1,21 @@
|
||||
package mops.gruppen2.domain.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Value;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
@Value
|
||||
//@Getter
|
||||
//@AllArgsConstructor
|
||||
//@NoArgsConstructor
|
||||
public class Title {
|
||||
|
||||
//private Title() {}
|
||||
|
||||
@NotBlank
|
||||
@Size(min = 4, max = 128)
|
||||
@JsonProperty("title")
|
||||
String groupTitle;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return groupTitle;
|
||||
}
|
||||
}
|
||||
|
@ -2,31 +2,30 @@ package mops.gruppen2.domain.model;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.ToString;
|
||||
import lombok.Value;
|
||||
import org.keycloak.KeycloakPrincipal;
|
||||
import org.keycloak.adapters.springsecurity.token.KeycloakAuthenticationToken;
|
||||
|
||||
@Getter
|
||||
@Value
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor // Für Jackson: CSV-Import
|
||||
@EqualsAndHashCode(onlyExplicitlyIncluded = true)
|
||||
@ToString
|
||||
public class User {
|
||||
|
||||
@EqualsAndHashCode.Include
|
||||
private String id;
|
||||
String userid;
|
||||
|
||||
String givenname;
|
||||
|
||||
private String givenname;
|
||||
@ToString.Exclude
|
||||
private String familyname;
|
||||
String familyname;
|
||||
|
||||
@ToString.Exclude
|
||||
private String email;
|
||||
String email;
|
||||
|
||||
public User(KeycloakAuthenticationToken token) {
|
||||
KeycloakPrincipal principal = (KeycloakPrincipal) token.getPrincipal();
|
||||
id = principal.getName();
|
||||
userid = principal.getName();
|
||||
givenname = principal.getKeycloakSecurityContext().getIdToken().getGivenName();
|
||||
familyname = principal.getKeycloakSecurityContext().getIdToken().getFamilyName();
|
||||
email = principal.getKeycloakSecurityContext().getIdToken().getEmail();
|
||||
@ -35,10 +34,10 @@ public class User {
|
||||
/**
|
||||
* User identifizieren sich über die Id, mehr wird also manchmal nicht benötigt.
|
||||
*
|
||||
* @param userId Die User Id
|
||||
* @param userid Die User Id
|
||||
*/
|
||||
public User(String userId) {
|
||||
id = userId;
|
||||
public User(String userid) {
|
||||
this.userid = userid;
|
||||
givenname = "";
|
||||
familyname = "";
|
||||
email = "";
|
||||
|
@ -84,8 +84,8 @@ public class EventStoreService {
|
||||
try {
|
||||
String payload = JsonHelper.serializeEvent(event);
|
||||
return new EventDTO(null,
|
||||
event.getGroupId().toString(),
|
||||
event.getUserId(),
|
||||
event.getGroupid().toString(),
|
||||
event.getUserid(),
|
||||
getEventType(event),
|
||||
payload);
|
||||
} catch (JsonProcessingException e) {
|
||||
@ -181,7 +181,7 @@ public class EventStoreService {
|
||||
|
||||
return createEvents.stream()
|
||||
.filter(event -> event instanceof CreateGroupEvent)
|
||||
.map(Event::getGroupId)
|
||||
.map(Event::getGroupid)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@ -194,14 +194,14 @@ public class EventStoreService {
|
||||
List<Event> userEvents = findLatestEventsFromGroupsByUser(user);
|
||||
List<UUID> deletedIds = findLatestEventsFromGroupsByType("DeleteGroupEvent")
|
||||
.stream()
|
||||
.map(Event::getGroupId)
|
||||
.map(Event::getGroupid)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
userEvents.removeIf(event -> deletedIds.contains(event.getGroupId()));
|
||||
userEvents.removeIf(event -> deletedIds.contains(event.getGroupid()));
|
||||
|
||||
return userEvents.stream()
|
||||
.filter(event -> event instanceof AddUserEvent)
|
||||
.map(Event::getGroupId)
|
||||
.map(Event::getGroupid)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@ -244,7 +244,7 @@ public class EventStoreService {
|
||||
* @return Eine Liste von einem Add- oder DeleteUserEvent pro Gruppe
|
||||
*/
|
||||
private List<Event> findLatestEventsFromGroupsByUser(User user) {
|
||||
return getEventsFromDTOs(eventStore.findLatestEventDTOsPartitionedByGroupByUser(user.getId()));
|
||||
return getEventsFromDTOs(eventStore.findLatestEventDTOsPartitionedByGroupByUser(user.getUserid()));
|
||||
}
|
||||
|
||||
|
||||
|
@ -106,7 +106,7 @@ public class GroupService {
|
||||
* @return Das neue Teilnehmermaximum
|
||||
*/
|
||||
private static Limit getAdjustedUserLimit(List<User> newUsers, Group group) {
|
||||
return new Limit(Math.max((long) group.getMembers().size() + newUsers.size(), group.getUserLimit().getUserLimit()));
|
||||
return new Limit(Math.max((long) group.getMembers().size() + newUsers.size(), group.getLimit().getUserLimit()));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -122,7 +122,7 @@ public class GroupService {
|
||||
ValidationHelper.throwIfNoMember(group, user);
|
||||
ValidationHelper.throwIfLastAdmin(user, group);
|
||||
|
||||
Role role = group.getRoles().get(user.getId());
|
||||
Role role = group.getRoles().get(user.getUserid());
|
||||
updateRole(user, group, role.toggle());
|
||||
}
|
||||
|
||||
@ -136,7 +136,7 @@ public class GroupService {
|
||||
*/
|
||||
private Group createGroup(User user, UUID parent, Type type) {
|
||||
Event event = new CreateGroupEvent(UUID.randomUUID(),
|
||||
user.getId(),
|
||||
user,
|
||||
parent,
|
||||
type);
|
||||
Group group = new Group();
|
||||
@ -248,7 +248,7 @@ public class GroupService {
|
||||
private void updateRole(User user, Group group, Role role) {
|
||||
ValidationHelper.throwIfNoMember(group, user);
|
||||
|
||||
if (role == group.getRoles().get(user.getId())) {
|
||||
if (role == group.getRoles().get(user.getUserid())) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -266,7 +266,7 @@ public class GroupService {
|
||||
public void updateUserLimit(User user, Group group, Limit userLimit) {
|
||||
ValidationHelper.throwIfNoAdmin(group, user);
|
||||
|
||||
if (userLimit == group.getUserLimit()) {
|
||||
if (userLimit == group.getLimit()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -22,16 +22,16 @@ public class InviteService {
|
||||
|
||||
void createLink(Group group) {
|
||||
inviteRepository.save(new InviteLinkDTO(null,
|
||||
group.getId().toString(),
|
||||
group.getGroupid().toString(),
|
||||
UUID.randomUUID().toString()));
|
||||
|
||||
log.debug("Link wurde erzeugt! (Gruppe: {})", group.getId());
|
||||
log.debug("Link wurde erzeugt! (Gruppe: {})", group.getGroupid());
|
||||
}
|
||||
|
||||
void destroyLink(Group group) {
|
||||
inviteRepository.deleteLinkOfGroup(group.getId().toString());
|
||||
inviteRepository.deleteLinkOfGroup(group.getGroupid().toString());
|
||||
|
||||
log.debug("Link wurde zerstört! (Gruppe: {})", group.getId());
|
||||
log.debug("Link wurde zerstört! (Gruppe: {})", group.getGroupid());
|
||||
}
|
||||
|
||||
public UUID getGroupIdFromLink(String link) {
|
||||
@ -45,10 +45,10 @@ public class InviteService {
|
||||
|
||||
public String getLinkByGroup(Group group) {
|
||||
try {
|
||||
return inviteRepository.findLinkByGroupId(group.getId().toString());
|
||||
return inviteRepository.findLinkByGroupId(group.getGroupid().toString());
|
||||
} catch (Exception e) {
|
||||
log.error("Link zu Gruppe ({}) konnte nicht gefunden werden!", group.getId(), e);
|
||||
throw new NoInviteExistException(group.getId().toString());
|
||||
log.error("Link zu Gruppe ({}) konnte nicht gefunden werden!", group.getGroupid(), e);
|
||||
throw new NoInviteExistException(group.getGroupid().toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -48,7 +48,7 @@ public class ProjectionService {
|
||||
static List<Group> projectGroups(List<Event> events) throws EventException {
|
||||
Map<UUID, Group> groupMap = new HashMap<>();
|
||||
|
||||
events.forEach(event -> event.apply(getOrCreateGroup(groupMap, event.getGroupId())));
|
||||
events.forEach(event -> event.apply(getOrCreateGroup(groupMap, event.getGroupid())));
|
||||
|
||||
return new ArrayList<>(groupMap.values());
|
||||
}
|
||||
@ -119,7 +119,6 @@ public class ProjectionService {
|
||||
* @throws EventException Projektionsfehler
|
||||
*/
|
||||
@Cacheable("groups")
|
||||
//TODO: remove userID param
|
||||
public List<Group> projectPublicGroups() throws EventException {
|
||||
List<UUID> groupIds = eventStoreService.findExistingGroupIds();
|
||||
List<Event> events = eventStoreService.findEventsByGroupAndType(groupIds,
|
||||
@ -219,7 +218,7 @@ public class ProjectionService {
|
||||
void removeUserGroups(List<Group> groups, User user) {
|
||||
List<UUID> userGroups = eventStoreService.findExistingUserGroups(user);
|
||||
|
||||
groups.removeIf(group -> userGroups.contains(group.getId()));
|
||||
groups.removeIf(group -> userGroups.contains(group.getGroupid()));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -70,6 +70,6 @@ public class GroupCreationController {
|
||||
groupService.addUsersToGroup(CsvHelper.readCsvFile(create.getFile()), group, user);
|
||||
}
|
||||
|
||||
return "redirect:/gruppen2/details/" + IdHelper.uuidToString(group.getId());
|
||||
return "redirect:/gruppen2/details/" + IdHelper.uuidToString(group.getGroupid());
|
||||
}
|
||||
}
|
||||
|
@ -204,7 +204,7 @@ public class GroupDetailsController {
|
||||
ValidationHelper.throwIfNoAdmin(group, user);
|
||||
|
||||
// Der eingeloggte User kann sich nicht selbst entfernen (er kann aber verlassen)
|
||||
if (!userId.equals(user.getId())) {
|
||||
if (!userId.equals(user.getUserid())) {
|
||||
groupService.deleteUser(new User(userId), group);
|
||||
}
|
||||
|
||||
|
@ -71,12 +71,12 @@ public class SearchAndInviteController {
|
||||
|
||||
// Gruppe öffentlich
|
||||
if (group.getType() == Type.PUBLIC) {
|
||||
return "redirect:/gruppen2/details/" + group.getId();
|
||||
return "redirect:/gruppen2/details/" + group.getGroupid();
|
||||
}
|
||||
|
||||
// Bereits Mitglied
|
||||
if (ValidationHelper.checkIfMember(group, user)) {
|
||||
return "redirect:/gruppen2/details/" + group.getId();
|
||||
return "redirect:/gruppen2/details/" + group.getGroupid();
|
||||
}
|
||||
|
||||
return "link";
|
||||
|
@ -11,7 +11,7 @@
|
||||
<main th:fragment="bodycontent">
|
||||
<div class="container-fluid">
|
||||
|
||||
<h1 class="def-cursor" th:text="${group.getTitle().getGroupTitle()}"></h1>
|
||||
<h1 class="def-cursor" th:text="${group.getTitle()}"></h1>
|
||||
|
||||
<div class="row">
|
||||
<!--Gruppendetails-->
|
||||
@ -27,7 +27,7 @@
|
||||
<!--Spacer-->
|
||||
<span class="col"></span>
|
||||
|
||||
<form method="post" th:action="@{/gruppen2/details/{id}/leave(id=${group.getId()})}">
|
||||
<form method="post" th:action="@{/gruppen2/details/{id}/leave(id=${group.getGroupid()})}">
|
||||
<button class="btn btn-danger btn-bar" type="submit">Gruppe verlassen
|
||||
</button>
|
||||
</form>
|
||||
@ -40,13 +40,13 @@
|
||||
<!--Anzahl Text-->
|
||||
<div class="mb-2">
|
||||
<span>Teilnehmer: </span>
|
||||
<span th:text="${group.getMembers().size() + ' von ' + group.getUserLimit().getUserLimit()}"></span>
|
||||
<span th:text="${group.getMembers().size() + ' von ' + group.getLimit().getUserLimit()}"></span>
|
||||
</div>
|
||||
|
||||
<!--Bearbeiten-Button-->
|
||||
<div class="mb-2" th:if="${group.getRoles().get(user.getId()) == admin}">
|
||||
<div class="mb-2" th:if="${group.getRoles().get(user.getUserid()) == admin}">
|
||||
<form method="get"
|
||||
th:action="@{/gruppen2/details/{id}/edit(id=${group.getId()})}">
|
||||
th:action="@{/gruppen2/details/{id}/edit(id=${group.getGroupid()})}">
|
||||
<button class="btn btn-secondary btn-block">Gruppe verwalten</button>
|
||||
</form>
|
||||
</div>
|
||||
|
@ -10,19 +10,19 @@
|
||||
|
||||
<main th:fragment="bodycontent">
|
||||
<div class="container-fluid">
|
||||
<h1 class="def-cursor" th:text="${group.getTitle().getGroupTitle()}"></h1>
|
||||
<h1 class="def-cursor" th:text="${group.getTitle()}"></h1>
|
||||
|
||||
<!--Fertig oder löschen-->
|
||||
<div class="content">
|
||||
<div class="row">
|
||||
<form method="get" th:action="@{/gruppen2/details/{id}(id=${group.getId()})}">
|
||||
<form method="get" th:action="@{/gruppen2/details/{id}(id=${group.getGroupid()})}">
|
||||
<button class="btn btn-primary">Fertig</button>
|
||||
</form>
|
||||
|
||||
<!--Spacer-->
|
||||
<span class="col"></span>
|
||||
|
||||
<form method="post" th:action="@{/gruppen2/details/{id}/edit/destroy(id=${group.getId()})}">
|
||||
<form method="post" th:action="@{/gruppen2/details/{id}/edit/destroy(id=${group.getGroupid()})}">
|
||||
<button class="btn btn-danger btn-bar" type="submit">Gruppe löschen
|
||||
</button>
|
||||
</form>
|
||||
@ -50,7 +50,7 @@
|
||||
|
||||
<!--Beschreibung + Titel-->
|
||||
<div class="content-text">
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/meta(id=${group.getId()})}"
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/meta(id=${group.getGroupid()})}"
|
||||
method="post">
|
||||
|
||||
<div th:replace="~{fragments/forms :: meta}"></div>
|
||||
@ -63,7 +63,7 @@
|
||||
|
||||
<!--Userlimit-->
|
||||
<div class="content-text-in">
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/userlimit(id=${group.getId()})}"
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/userlimit(id=${group.getGroupid()})}"
|
||||
method="post">
|
||||
|
||||
<div th:replace="~{fragments/forms :: userlimit}"></div>
|
||||
@ -76,7 +76,7 @@
|
||||
|
||||
<!--CSV Import-->
|
||||
<div class="content-text mb-0">
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/csv(id=${group.getId()})}"
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/csv(id=${group.getGroupid()})}"
|
||||
th:if="${account.getRoles().contains('orga')}"
|
||||
enctype="multipart/form-data" method="post">
|
||||
|
||||
@ -103,13 +103,13 @@
|
||||
</div>
|
||||
|
||||
<div class="d-flex">
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/delete/{userid}(id=${group.getId()}, userid=${member.getId()})}"
|
||||
th:unless="${member.getId() == account.getName()}"
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/delete/{userid}(id=${group.getGroupid()}, userid=${member.getUserid()})}"
|
||||
th:unless="${member.getUserid() == account.getName()}"
|
||||
method="post">
|
||||
<button type="submit" class="btn btn-danger mr-2">Entfernen</button>
|
||||
</form>
|
||||
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/role/{userid}(id=${group.getId()}, userid=${member.getId()})}"
|
||||
<form th:action="@{/gruppen2/details/{id}/edit/role/{userid}(id=${group.getGroupid()}, userid=${member.getUserid()})}"
|
||||
method="post">
|
||||
<button type="submit" class="btn btn-warning">Rolle ändern</button>
|
||||
</form>
|
||||
|
@ -11,7 +11,7 @@
|
||||
<span class="input-group-text text-monospace">Gruppentitel:</span>
|
||||
</div>
|
||||
<input type="text" class="form-control" name="groupTitle" minlength="4" maxlength="128"
|
||||
th:value="${group?.getTitle()?.getGroupTitle()}" required>
|
||||
th:value="${group?.getTitle()}" required>
|
||||
</div>
|
||||
|
||||
<!--Gruppenbeschreibung-->
|
||||
@ -50,8 +50,8 @@
|
||||
<input type="hidden" id="parentdummy" name="parent" value="00000000-0000-0000-0000-000000000000" disabled>
|
||||
<select class="custom-select" id="parentselect" name="parent">
|
||||
<option value="00000000-0000-0000-0000-000000000000" selected>Keiner</option>
|
||||
<option th:each="lecture : ${lectures}" th:value="${lecture.getId()}"
|
||||
th:text="${lecture.getTitle().getGroupTitle()}"></option>
|
||||
<option th:each="lecture : ${lectures}" th:value="${lecture.getGroupid()}"
|
||||
th:text="${lecture.getTitle()}"></option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
@ -62,16 +62,16 @@
|
||||
<label for="userlimit">Teilnehmeranzahl:</label>
|
||||
<div class="btn-toolbar row mx-0" id="userlimit">
|
||||
<input type="hidden" name="userLimit" id="limit" value="999999"
|
||||
th:disabled="${group != null && group.getUserLimit().getUserLimit() < 999999} ? 'disabled' : 'false'">
|
||||
th:disabled="${group != null && group.getLimit().getUserLimit() < 999999} ? 'disabled' : 'false'">
|
||||
<div class="btn-group btn-group-toggle col-sm-4 px-0" data-toggle="buttons">
|
||||
<label class="btn btn-secondary active" onclick="disable('#limitselect'); enable('#limit')">
|
||||
<input type="radio"
|
||||
th:checked="${group != null && group.getUserLimit().getUserLimit() < 999999} ? 'false' : 'checked'">
|
||||
th:checked="${group != null && group.getLimit().getUserLimit() < 999999} ? 'false' : 'checked'">
|
||||
Unbegrenzt
|
||||
</label>
|
||||
<label class="btn btn-secondary" onclick="enable('#limitselect'); disable('#limit')">
|
||||
<input type="radio"
|
||||
th:checked="${group != null && group.getUserLimit().getUserLimit() < 999999} ? 'checked' : 'false'">
|
||||
th:checked="${group != null && group.getLimit().getUserLimit() < 999999} ? 'checked' : 'false'">
|
||||
Begrenzt
|
||||
</label>
|
||||
</div>
|
||||
@ -82,9 +82,9 @@
|
||||
<span class="input-group-text text-monospace">Limit:</span>
|
||||
</div>
|
||||
<input type="number" class="form-control" name="userLimit"
|
||||
th:value="${group != null} ? ${group.getUserLimit().getUserLimit()} : '999999'"
|
||||
th:value="${group != null} ? ${group.getLimit().getUserLimit()} : '999999'"
|
||||
min="1" max="999999" id="limitselect" required
|
||||
th:disabled="${group != null && group.getUserLimit().getUserLimit() < 999999} ? 'false' : 'disabled'">
|
||||
th:disabled="${group != null && group.getLimit().getUserLimit() < 999999} ? 'false' : 'disabled'">
|
||||
<div class="input-group-append">
|
||||
<span class="input-group-text text-monospace">Teilnehmer</span>
|
||||
</div>
|
||||
|
@ -15,9 +15,9 @@
|
||||
th:if='${group.getType() == lecture}'>Veranstaltung</span>
|
||||
|
||||
<span class="badge badge-pill parent"
|
||||
th:unless="${parent == null || parent?.getTitle()?.getGroupTitle() == null|| parent?.getTitle()?.getGroupTitle() == ''}"
|
||||
th:title="${'Die Gruppe gehört zur Veranstaltung ' + parent.getTitle().getGroupTitle() + '.'}"
|
||||
th:text="${parent.getTitle().getGroupTitle()}">Parent</span>
|
||||
th:unless="${parent == null || parent?.getTitle() == null|| parent?.getTitle() == ''}"
|
||||
th:title="${'Die Gruppe gehört zur Veranstaltung ' + parent.getTitle() + '.'}"
|
||||
th:text="${parent.getTitle()}">Parent</span>
|
||||
|
||||
<!--Needs completly projected (cached) groups-->
|
||||
<!--<span class="badge badge-success float-right"
|
||||
@ -28,7 +28,7 @@
|
||||
<!--User Badges-->
|
||||
<th:block th:fragment="userbadges">
|
||||
<span class="badge badge-success align-self-start ml-2"
|
||||
th:if="${group.getRoles().get(member.getId()) == admin}">Admin</span>
|
||||
th:if="${group.getRoles().get(member.getUserid()) == admin}">Admin</span>
|
||||
</th:block>
|
||||
|
||||
<th:block th:fragment="groupcontent">
|
||||
@ -48,21 +48,21 @@
|
||||
<!--Buttonbar zum Gruppe beitreten-->
|
||||
<th:block th:fragment="joingroup">
|
||||
<div class="content-heading">
|
||||
<span th:if="${group.getMembers().size() < group.getUserLimit().getUserLimit()}">
|
||||
<span th:if="${group.getMembers().size() < group.getLimit().getUserLimit()}">
|
||||
Möchtest du dieser Gruppe beitreten?
|
||||
</span>
|
||||
<span th:unless="${group.getMembers().size() < group.getUserLimit().getUserLimit()}">
|
||||
<span th:unless="${group.getMembers().size() < group.getLimit().getUserLimit()}">
|
||||
Diese Gruppe hat ihre maximale Teilnehmeranzahl erreicht.
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<form method="post" th:action="@{/gruppen2/details/{id}/join(id = ${group.getId()})}"
|
||||
th:if="${group.getMembers().size() < group.getUserLimit().getUserLimit()}">
|
||||
<form method="post" th:action="@{/gruppen2/details/{id}/join(id = ${group.getGroupId()})}"
|
||||
th:if="${group.getMembers().size() < group.getLimit().getUserLimit()}">
|
||||
<button class="btn btn-success" type="submit">Gruppe beitreten.</button>
|
||||
</form>
|
||||
|
||||
<div class="col" th:if="${group.getMembers().size() < group.getUserLimit().getUserLimit()}"></div>
|
||||
<div class="col" th:if="${group.getMembers().size() < group.getLimit().getUserLimit()}"></div>
|
||||
|
||||
<a class="btn btn-primary" href="/gruppen2"
|
||||
type="submit">Startseite.</a>
|
||||
|
@ -16,8 +16,8 @@
|
||||
<!--Gruppenliste belegte Gruppen-->
|
||||
<div class="content" th:each="group: ${groups}">
|
||||
<div class="content-heading row">
|
||||
<a class="link col" th:href="@{/gruppen2/details/{id}(id=${group.getId()})}"
|
||||
th:text="${group.getTitle().getGroupTitle()}"></a>
|
||||
<a class="link col" th:href="@{/gruppen2/details/{id}(id=${group.getGroupid()})}"
|
||||
th:text="${group.getTitle()}"></a>
|
||||
|
||||
<span th:replace="~{fragments/groups :: badges}"></span>
|
||||
</div>
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
<main th:fragment="bodycontent">
|
||||
<div class="container-fluid">
|
||||
<h1 class="def-cursor" th:text="${group.getTitle().getGroupTitle()}"></h1>
|
||||
<h1 class="def-cursor" th:text="${group.getTitle()}"></h1>
|
||||
|
||||
<div class="content" th:insert="~{fragments/groups :: groupcontent}"></div>
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
<main th:fragment="bodycontent">
|
||||
<div class="container-fluid">
|
||||
<h1 class="def-cursor" th:text="${group.getTitle().getGroupTitle()}"></h1>
|
||||
<h1 class="def-cursor" th:text="${group.getTitle()}"></h1>
|
||||
|
||||
<div class="content" th:insert="~{fragments/groups :: groupcontent}"></div>
|
||||
|
||||
|
@ -31,8 +31,8 @@
|
||||
<div class="content-heading row">
|
||||
<span th:replace="~{fragments/groups :: badges}"></span>
|
||||
|
||||
<a class="link col" th:href="@{/gruppen2/details/{id}(id=${group.getId()})}"
|
||||
th:text="${group.getTitle().getGroupTitle()}"></a>
|
||||
<a class="link col" th:href="@{/gruppen2/details/{id}(id=${group.getGroupid()})}"
|
||||
th:text="${group.getTitle()}"></a>
|
||||
</div>
|
||||
<div class="content-text-in">
|
||||
<span th:text="${group.getDescription().getGroupDescription()}"></span>
|
||||
|
@ -230,7 +230,7 @@ public class TestBuilder {
|
||||
Collections.shuffle(shuffle);
|
||||
|
||||
for (Event event : shuffle) {
|
||||
removeEvents.add(new DeleteUserEvent(event.getGroupId(), event.getUserId()));
|
||||
removeEvents.add(new DeleteUserEvent(event.getGroupid(), event.getUserid()));
|
||||
|
||||
if (removeEvents.size() >= count) {
|
||||
break;
|
||||
@ -249,7 +249,7 @@ public class TestBuilder {
|
||||
*/
|
||||
public static List<Event> deleteUserEvents(Group group) {
|
||||
return group.getMembers().parallelStream()
|
||||
.map(user -> deleteUserEvent(group.getId(), user.getId()))
|
||||
.map(user -> deleteUserEvent(group.getGroupid(), user.getUserId()))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,7 @@ class CreateGroupEventTest {
|
||||
|
||||
assertThat(group.getMembers()).hasSize(0);
|
||||
assertThat(group.getType()).isEqualTo(Type.PUBLIC);
|
||||
assertThat(group.getId()).isEqualTo(uuidMock(0));
|
||||
assertThat(group.getGroupid()).isEqualTo(uuidMock(0));
|
||||
assertThat(group.getParent()).isEqualTo(uuidMock(1));
|
||||
}
|
||||
}
|
||||
|
@ -22,8 +22,8 @@ class DeleteGroupEventTest {
|
||||
|
||||
assertThat(group.getMembers()).isEmpty();
|
||||
assertThat(group.getType()).isEqualTo(null);
|
||||
assertThat(group.getUserLimit()).isEqualTo(0);
|
||||
assertThat(group.getId()).isEqualTo(uuidMock(0));
|
||||
assertThat(group.getLimit()).isEqualTo(0);
|
||||
assertThat(group.getGroupid()).isEqualTo(uuidMock(0));
|
||||
assertThat(group.getParent()).isEqualTo(null);
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ class UpdateUserLimitEventTest {
|
||||
|
||||
Group group = apply(createEvent, updateEvent);
|
||||
|
||||
assertThat(group.getUserLimit()).isEqualTo(5);
|
||||
assertThat(group.getLimit()).isEqualTo(5);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -72,8 +72,8 @@ class EventStoreServiceTest {
|
||||
|
||||
EventDTO dto = EventStoreService.getDTOFromEvent(event);
|
||||
|
||||
assertThat(dto.getGroup_id()).isEqualTo(event.getGroupId().toString());
|
||||
assertThat(dto.getUser_id()).isEqualTo(event.getUserId());
|
||||
assertThat(dto.getGroup_id()).isEqualTo(event.getGroupid().toString());
|
||||
assertThat(dto.getUser_id()).isEqualTo(event.getUserid());
|
||||
assertThat(dto.getEvent_id()).isEqualTo(null);
|
||||
assertThat(dto.getEvent_type()).isEqualTo("CreateGroupEvent");
|
||||
}
|
||||
|
@ -108,8 +108,8 @@ class GroupServiceTest {
|
||||
List<UUID> groupIds = Arrays.asList(uuidMock(0), uuidMock(1));
|
||||
|
||||
assertThat(eventStoreService.findGroupEvents(groupIds)).hasSize(2);
|
||||
assertThat(eventStoreService.findGroupEvents(groupIds).get(0).getGroupId()).isEqualTo(uuidMock(0));
|
||||
assertThat(eventStoreService.findGroupEvents(groupIds).get(1).getGroupId()).isEqualTo(uuidMock(1));
|
||||
assertThat(eventStoreService.findGroupEvents(groupIds).get(0).getGroupid()).isEqualTo(uuidMock(0));
|
||||
assertThat(eventStoreService.findGroupEvents(groupIds).get(1).getGroupid()).isEqualTo(uuidMock(1));
|
||||
}
|
||||
|
||||
//TODO: ProjectionServiceTest
|
||||
|
@ -161,7 +161,7 @@ class APIControllerTest {
|
||||
void getGroupFromId_singleGroup() {
|
||||
eventStoreService.saveAll(createPrivateGroupEvent(uuidMock(0)));
|
||||
|
||||
assertThat(apiController.getApiGroup(uuidMock(0).toString()).getId()).isEqualTo(uuidMock(0));
|
||||
assertThat(apiController.getApiGroup(uuidMock(0).toString()).getGroupid()).isEqualTo(uuidMock(0));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Reference in New Issue
Block a user