38 lines
937 B
Java
38 lines
937 B
Java
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.NoAccessException;
|
|
import mops.gruppen2.domain.model.group.Group;
|
|
import mops.gruppen2.domain.model.group.wrapper.Link;
|
|
|
|
import javax.validation.Valid;
|
|
|
|
@Log4j2
|
|
@Value
|
|
@AllArgsConstructor
|
|
public class SetInviteLinkEvent extends Event {
|
|
|
|
@JsonProperty("link")
|
|
Link link;
|
|
|
|
public SetInviteLinkEvent(Group group, String exec, @Valid Link link) {
|
|
super(group.getId(), exec, null);
|
|
this.link = link;
|
|
}
|
|
|
|
@Override
|
|
protected void applyEvent(Group group) throws NoAccessException {
|
|
group.setLink(exec, link);
|
|
|
|
log.trace("\t\t\t\t\tNeuer Link: {}", group.getLink());
|
|
}
|
|
|
|
@Override
|
|
public String getType() {
|
|
return EventType.SETLINK.toString();
|
|
}
|
|
}
|