1
Files
lecture-professional-softwa…/src/main/java/mops/gruppen2/domain/event/UpdateRoleEvent.java
Christoph 2192751a01 fix rename errors
Co-authored-by: Christoph <tobi@urpost.de>
2020-03-19 00:20:14 +01:00

36 lines
907 B
Java

package mops.gruppen2.domain.event;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import mops.gruppen2.domain.Group;
import mops.gruppen2.domain.Role;
import mops.gruppen2.domain.exception.UserNotFoundException;
/**
* Aktualisiert die Gruppenrolle eines Teilnehmers.
*/
@Getter
@AllArgsConstructor
@NoArgsConstructor // For Jackson
public class UpdateRoleEvent extends Event {
private Role newRole;
public UpdateRoleEvent(Long groupId, String userId, Role newRole) {
super(groupId, userId);
this.newRole = newRole;
}
@Override
public void applyEvent(Group group) throws UserNotFoundException {
if (group.getRoles().containsKey(this.userId)) {
group.getRoles().put(this.userId, this.newRole);
return;
}
throw new UserNotFoundException(this.getClass().toString());
}
}