diff --git a/src/main/java/com/stumeet/server/activity/adapter/out/mapper/ActivityStatusConverter.java b/src/main/java/com/stumeet/server/activity/adapter/out/mapper/ActivityStatusConverter.java index 02713df2..ce641e67 100644 --- a/src/main/java/com/stumeet/server/activity/adapter/out/mapper/ActivityStatusConverter.java +++ b/src/main/java/com/stumeet/server/activity/adapter/out/mapper/ActivityStatusConverter.java @@ -1,14 +1,9 @@ package com.stumeet.server.activity.adapter.out.mapper; -import com.stumeet.server.activity.domain.exception.NotExistsActivityStatusException; import com.stumeet.server.activity.domain.model.ActivityStatus; -import com.stumeet.server.activity.domain.model.AssignmentStatus; -import com.stumeet.server.activity.domain.model.DefaultStatus; -import com.stumeet.server.activity.domain.model.MeetStatus; +import com.stumeet.server.activity.domain.model.ActivityStatusFactory; import jakarta.persistence.AttributeConverter; -import java.util.stream.Stream; - public class ActivityStatusConverter implements AttributeConverter { @Override public String convertToDatabaseColumn(ActivityStatus activityStatus) { @@ -17,10 +12,6 @@ public String convertToDatabaseColumn(ActivityStatus activityStatus) { @Override public ActivityStatus convertToEntityAttribute(String s) { - return Stream.of(MeetStatus.values(), DefaultStatus.values(), AssignmentStatus.values()) - .flatMap(Stream::of) - .filter(activityStatus -> activityStatus.getStatus().equals(s)) - .findAny() - .orElseThrow(() -> new NotExistsActivityStatusException(s)); + return ActivityStatusFactory.createByStatus(s); } } diff --git a/src/main/java/com/stumeet/server/activity/domain/model/ActivityStatusFactory.java b/src/main/java/com/stumeet/server/activity/domain/model/ActivityStatusFactory.java new file mode 100644 index 00000000..7778c1a2 --- /dev/null +++ b/src/main/java/com/stumeet/server/activity/domain/model/ActivityStatusFactory.java @@ -0,0 +1,17 @@ +package com.stumeet.server.activity.domain.model; + +import com.stumeet.server.activity.domain.exception.NotExistsActivityStatusException; + +import java.util.stream.Stream; + +public class ActivityStatusFactory { + private ActivityStatusFactory() {} + + public static ActivityStatus createByStatus(String status) { + return Stream.of(MeetStatus.values(), DefaultStatus.values(), AssignmentStatus.values()) + .flatMap(Stream::of) + .filter(activityStatus -> activityStatus.getStatus().equals(status)) + .findAny() + .orElseThrow(() -> new NotExistsActivityStatusException(status)); + } +}