diff --git a/back/src/main/java/be/naaturel/letsmeet/core/helpers/TokenGenerator.java b/back/src/main/java/be/naaturel/letsmeet/core/helpers/TokenGenerator.java new file mode 100644 index 0000000..2c5d2d7 --- /dev/null +++ b/back/src/main/java/be/naaturel/letsmeet/core/helpers/TokenGenerator.java @@ -0,0 +1,14 @@ +package be.naaturel.letsmeet.core.helpers; + +import java.util.UUID; + +public class TokenGenerator { + + + private static int length = 6; + + public static String generate(){ + return UUID.randomUUID().toString().replace("-", "").substring(0, length); + } + +} diff --git a/back/src/main/java/be/naaturel/letsmeet/models/Event.java b/back/src/main/java/be/naaturel/letsmeet/core/models/Event.java similarity index 93% rename from back/src/main/java/be/naaturel/letsmeet/models/Event.java rename to back/src/main/java/be/naaturel/letsmeet/core/models/Event.java index b75a752..47af935 100644 --- a/back/src/main/java/be/naaturel/letsmeet/models/Event.java +++ b/back/src/main/java/be/naaturel/letsmeet/core/models/Event.java @@ -1,4 +1,4 @@ -package be.naaturel.letsmeet.models; +package be.naaturel.letsmeet.core.models; import java.util.*; diff --git a/back/src/main/java/be/naaturel/letsmeet/models/EventDate.java b/back/src/main/java/be/naaturel/letsmeet/core/models/EventDate.java similarity index 84% rename from back/src/main/java/be/naaturel/letsmeet/models/EventDate.java rename to back/src/main/java/be/naaturel/letsmeet/core/models/EventDate.java index d222de9..13a26c1 100644 --- a/back/src/main/java/be/naaturel/letsmeet/models/EventDate.java +++ b/back/src/main/java/be/naaturel/letsmeet/core/models/EventDate.java @@ -1,4 +1,4 @@ -package be.naaturel.letsmeet.models; +package be.naaturel.letsmeet.core.models; import java.util.Objects; diff --git a/back/src/main/java/be/naaturel/letsmeet/models/Participant.java b/back/src/main/java/be/naaturel/letsmeet/core/models/Participant.java similarity index 95% rename from back/src/main/java/be/naaturel/letsmeet/models/Participant.java rename to back/src/main/java/be/naaturel/letsmeet/core/models/Participant.java index cbec429..2754d4a 100644 --- a/back/src/main/java/be/naaturel/letsmeet/models/Participant.java +++ b/back/src/main/java/be/naaturel/letsmeet/core/models/Participant.java @@ -1,4 +1,4 @@ -package be.naaturel.letsmeet.models; +package be.naaturel.letsmeet.core.models; import java.util.HashSet; import java.util.Objects; diff --git a/back/src/main/java/be/naaturel/letsmeet/dto/database/EventDateEntity.java b/back/src/main/java/be/naaturel/letsmeet/dto/database/EventDateEntity.java index eba91b4..87de477 100644 --- a/back/src/main/java/be/naaturel/letsmeet/dto/database/EventDateEntity.java +++ b/back/src/main/java/be/naaturel/letsmeet/dto/database/EventDateEntity.java @@ -1,6 +1,5 @@ package be.naaturel.letsmeet.dto.database; -import be.naaturel.letsmeet.models.EventDate; import jakarta.persistence.*; import java.util.Objects; diff --git a/back/src/main/java/be/naaturel/letsmeet/dto/database/EventEntity.java b/back/src/main/java/be/naaturel/letsmeet/dto/database/EventEntity.java index f04f3da..6ce0924 100644 --- a/back/src/main/java/be/naaturel/letsmeet/dto/database/EventEntity.java +++ b/back/src/main/java/be/naaturel/letsmeet/dto/database/EventEntity.java @@ -1,7 +1,5 @@ package be.naaturel.letsmeet.dto.database; -import be.naaturel.letsmeet.models.EventDate; -import be.naaturel.letsmeet.models.Participant; import jakarta.persistence.*; import java.util.*; @@ -16,6 +14,9 @@ public class EventEntity { @Column public String name; + @Column(unique = true) + public String token; + @Column @OneToMany(targetEntity=EventDateEntity.class, cascade=CascadeType.ALL, mappedBy="event") public Set dates; diff --git a/back/src/main/java/be/naaturel/letsmeet/dto/database/factories/DatabasePropsFactory.java b/back/src/main/java/be/naaturel/letsmeet/dto/database/factories/DatabasePropsFactory.java index aadbb28..56ac345 100644 --- a/back/src/main/java/be/naaturel/letsmeet/dto/database/factories/DatabasePropsFactory.java +++ b/back/src/main/java/be/naaturel/letsmeet/dto/database/factories/DatabasePropsFactory.java @@ -1,5 +1,6 @@ package be.naaturel.letsmeet.dto.database.factories; +import be.naaturel.letsmeet.core.helpers.TokenGenerator; import be.naaturel.letsmeet.dto.database.EventDateEntity; import be.naaturel.letsmeet.dto.database.EventEntity; import be.naaturel.letsmeet.dto.database.ParticipantEntity; @@ -13,6 +14,7 @@ public class DatabasePropsFactory { EventEntity entity = new EventEntity(); entity.name = name; + entity.token = TokenGenerator.generate(); entity.participants = participants; entity.dates = new HashSet<>(); for (ParticipantEntity pe : entity.participants) { diff --git a/back/src/main/java/be/naaturel/letsmeet/dto/httpRequest/EventDateDTO.java b/back/src/main/java/be/naaturel/letsmeet/dto/httpRequest/EventDateDTO.java index 967c66e..9e065d1 100644 --- a/back/src/main/java/be/naaturel/letsmeet/dto/httpRequest/EventDateDTO.java +++ b/back/src/main/java/be/naaturel/letsmeet/dto/httpRequest/EventDateDTO.java @@ -1,7 +1,5 @@ package be.naaturel.letsmeet.dto.httpRequest; -import be.naaturel.letsmeet.models.EventDate; - import java.util.Objects; public class EventDateDTO { diff --git a/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventDateMapper.java b/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventDateMapper.java index dd88d26..3a27bd9 100644 --- a/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventDateMapper.java +++ b/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventDateMapper.java @@ -3,7 +3,7 @@ package be.naaturel.letsmeet.mappers.database; import be.naaturel.letsmeet.dto.database.EventDateEntity; import be.naaturel.letsmeet.dto.database.factories.DatabasePropsFactory; import be.naaturel.letsmeet.mappers.Mapper; -import be.naaturel.letsmeet.models.EventDate; +import be.naaturel.letsmeet.core.models.EventDate; import java.util.Collection; import java.util.function.Supplier; diff --git a/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventMapper.java b/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventMapper.java index 8e7a2d4..6813546 100644 --- a/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventMapper.java +++ b/back/src/main/java/be/naaturel/letsmeet/mappers/database/EventMapper.java @@ -4,8 +4,8 @@ import be.naaturel.letsmeet.dto.database.EventEntity; import be.naaturel.letsmeet.dto.database.ParticipantEntity; import be.naaturel.letsmeet.dto.database.factories.DatabasePropsFactory; import be.naaturel.letsmeet.mappers.Mapper; -import be.naaturel.letsmeet.models.Event; -import be.naaturel.letsmeet.models.Participant; +import be.naaturel.letsmeet.core.models.Event; +import be.naaturel.letsmeet.core.models.Participant; import java.util.*; import java.util.function.Supplier; diff --git a/back/src/main/java/be/naaturel/letsmeet/mappers/database/ParticipantMapper.java b/back/src/main/java/be/naaturel/letsmeet/mappers/database/ParticipantMapper.java index 7e5b1d5..f6b2656 100644 --- a/back/src/main/java/be/naaturel/letsmeet/mappers/database/ParticipantMapper.java +++ b/back/src/main/java/be/naaturel/letsmeet/mappers/database/ParticipantMapper.java @@ -4,8 +4,8 @@ import be.naaturel.letsmeet.dto.database.EventDateEntity; import be.naaturel.letsmeet.dto.database.ParticipantEntity; import be.naaturel.letsmeet.dto.database.factories.DatabasePropsFactory; import be.naaturel.letsmeet.mappers.Mapper; -import be.naaturel.letsmeet.models.EventDate; -import be.naaturel.letsmeet.models.Participant; +import be.naaturel.letsmeet.core.models.EventDate; +import be.naaturel.letsmeet.core.models.Participant; import java.util.Collection; import java.util.HashSet; diff --git a/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDTOMapper.java b/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDTOMapper.java index ae065bb..0ca38ab 100644 --- a/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDTOMapper.java +++ b/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDTOMapper.java @@ -3,8 +3,8 @@ package be.naaturel.letsmeet.mappers.requests; import be.naaturel.letsmeet.dto.httpRequest.EventDTO; import be.naaturel.letsmeet.dto.httpRequest.ParticipantDTO; import be.naaturel.letsmeet.mappers.Mapper; -import be.naaturel.letsmeet.models.Event; -import be.naaturel.letsmeet.models.Participant; +import be.naaturel.letsmeet.core.models.Event; +import be.naaturel.letsmeet.core.models.Participant; import java.util.Collection; import java.util.HashSet; diff --git a/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDateDTOMapper.java b/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDateDTOMapper.java index 82085d5..e5168f5 100644 --- a/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDateDTOMapper.java +++ b/back/src/main/java/be/naaturel/letsmeet/mappers/requests/EventDateDTOMapper.java @@ -1,13 +1,10 @@ package be.naaturel.letsmeet.mappers.requests; import be.naaturel.letsmeet.dto.httpRequest.EventDateDTO; -import be.naaturel.letsmeet.dto.httpRequest.ParticipantDTO; import be.naaturel.letsmeet.mappers.Mapper; -import be.naaturel.letsmeet.models.EventDate; -import be.naaturel.letsmeet.models.Participant; +import be.naaturel.letsmeet.core.models.EventDate; import java.util.Collection; -import java.util.HashSet; import java.util.function.Supplier; public class EventDateDTOMapper implements Mapper { diff --git a/back/src/main/java/be/naaturel/letsmeet/mappers/requests/ParticipantDTOMapper.java b/back/src/main/java/be/naaturel/letsmeet/mappers/requests/ParticipantDTOMapper.java index 1f6586c..3763689 100644 --- a/back/src/main/java/be/naaturel/letsmeet/mappers/requests/ParticipantDTOMapper.java +++ b/back/src/main/java/be/naaturel/letsmeet/mappers/requests/ParticipantDTOMapper.java @@ -3,8 +3,8 @@ package be.naaturel.letsmeet.mappers.requests; import be.naaturel.letsmeet.dto.httpRequest.EventDateDTO; import be.naaturel.letsmeet.dto.httpRequest.ParticipantDTO; import be.naaturel.letsmeet.mappers.Mapper; -import be.naaturel.letsmeet.models.EventDate; -import be.naaturel.letsmeet.models.Participant; +import be.naaturel.letsmeet.core.models.EventDate; +import be.naaturel.letsmeet.core.models.Participant; import java.util.Collection; import java.util.HashSet; diff --git a/back/src/main/java/be/naaturel/letsmeet/services/EventService.java b/back/src/main/java/be/naaturel/letsmeet/services/EventService.java index 696531c..5031072 100644 --- a/back/src/main/java/be/naaturel/letsmeet/services/EventService.java +++ b/back/src/main/java/be/naaturel/letsmeet/services/EventService.java @@ -1,11 +1,10 @@ package be.naaturel.letsmeet.services; -import be.naaturel.letsmeet.dto.database.EventDateEntity; import be.naaturel.letsmeet.dto.database.EventEntity; import be.naaturel.letsmeet.dto.httpRequest.EventDTO; import be.naaturel.letsmeet.mappers.database.EventMapper; import be.naaturel.letsmeet.mappers.requests.EventDTOMapper; -import be.naaturel.letsmeet.models.Event; +import be.naaturel.letsmeet.core.models.Event; import be.naaturel.letsmeet.repositories.EventRepo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.OptimisticLockingFailureException; diff --git a/back/src/test/java/be/naaturel/letsmeet/mappers/DateMapperTest.java b/back/src/test/java/be/naaturel/letsmeet/mappers/DateMapperTest.java index 3660b9b..729a6d4 100644 --- a/back/src/test/java/be/naaturel/letsmeet/mappers/DateMapperTest.java +++ b/back/src/test/java/be/naaturel/letsmeet/mappers/DateMapperTest.java @@ -2,7 +2,7 @@ package be.naaturel.letsmeet.mappers; import be.naaturel.letsmeet.dto.database.EventDateEntity; import be.naaturel.letsmeet.mappers.database.EventDateMapper; -import be.naaturel.letsmeet.models.EventDate; +import be.naaturel.letsmeet.core.models.EventDate; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; diff --git a/back/src/test/java/be/naaturel/letsmeet/mappers/EventMapperTest.java b/back/src/test/java/be/naaturel/letsmeet/mappers/EventMapperTest.java index 47c34b1..8ea0bda 100644 --- a/back/src/test/java/be/naaturel/letsmeet/mappers/EventMapperTest.java +++ b/back/src/test/java/be/naaturel/letsmeet/mappers/EventMapperTest.java @@ -1,15 +1,5 @@ package be.naaturel.letsmeet.mappers; -import be.naaturel.letsmeet.dto.database.EventDateEntity; -import be.naaturel.letsmeet.dto.database.EventEntity; -import be.naaturel.letsmeet.mappers.database.EventMapper; -import be.naaturel.letsmeet.models.EventDate; -import be.naaturel.letsmeet.models.Event; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.Test; - -import java.util.*; - import static org.junit.jupiter.api.Assertions.assertEquals; public class EventMapperTest {