View Javadoc
1   package com.codecool.bytebattlers.mapper;
2   
3   import com.codecool.bytebattlers.controller.dto.RatingDto;
4   import com.codecool.bytebattlers.model.Rating;
5   import org.mapstruct.*;
6   
7   @Mapper(unmappedTargetPolicy = ReportingPolicy.IGNORE, componentModel = MappingConstants.ComponentModel.SPRING)
8   public interface RatingMapper {
9       @Mapping(source = "boardGameGameName", target = "boardGame.gameName")
10      @Mapping(source = "boardGamePublicID", target = "boardGame.publicID")
11      @Mapping(source = "appUserName", target = "appUser.name")
12      @Mapping(source = "appUserPublicID", target = "appUser.publicID")
13      Rating toEntity(RatingDto ratingDto);
14  
15      @InheritInverseConfiguration(name = "toEntity")
16      RatingDto toDto(Rating rating);
17  
18      @InheritConfiguration(name = "toEntity")
19      @BeanMapping(nullValuePropertyMappingStrategy = NullValuePropertyMappingStrategy.IGNORE)
20      Rating partialUpdate(RatingDto ratingDto, @MappingTarget Rating rating);
21  }