IdMapper.java
package com.wilzwert.myjobs.infrastructure.persistence.mongo.mapper;
import com.wilzwert.myjobs.core.domain.model.*;
import com.wilzwert.myjobs.core.domain.model.activity.ActivityId;
import com.wilzwert.myjobs.core.domain.model.attachment.AttachmentId;
import com.wilzwert.myjobs.core.domain.model.job.JobId;
import com.wilzwert.myjobs.core.domain.model.user.UserId;
import org.mapstruct.Mapper;
import java.util.UUID;
@Mapper(componentModel = "spring")
public interface IdMapper {
default UUID toEntity(EntityId<UUID> entityId) {
return entityId.value();
}
default UserId mapUserId(UUID id) {
return new UserId(id);
}
default JobId mapJobId(UUID id) {
return new JobId(id);
}
default ActivityId mapActivityId(UUID id) {
return new ActivityId(id);
}
default AttachmentId mapAttachmentId(UUID id) {
return new AttachmentId(id);
}
}