View Javadoc
1   package com.codecool.bytebattlers.mapper;
2   
3   import com.codecool.bytebattlers.controller.dto.ReviewDto;
4   import com.codecool.bytebattlers.model.AppUser;
5   import com.codecool.bytebattlers.model.BoardGame;
6   import com.codecool.bytebattlers.model.Review;
7   import java.util.UUID;
8   import javax.annotation.processing.Generated;
9   import org.springframework.stereotype.Component;
10  
11  @Generated(
12      value = "org.mapstruct.ap.MappingProcessor",
13      date = "2025-01-25T06:38:34+0000",
14      comments = "version: 1.5.5.Final, compiler: javac, environment: Java 17.0.14 (Azul Systems, Inc.)"
15  )
16  @Component
17  public class ReviewMapperImpl implements ReviewMapper {
18  
19      @Override
20      public Review partialUpdate(ReviewDto reviewDto, Review review) {
21          if ( reviewDto == null ) {
22              return review;
23          }
24  
25          if ( reviewDto.publicID() != null ) {
26              review.setPublicID( reviewDto.publicID() );
27          }
28          if ( reviewDto.description() != null ) {
29              review.setDescription( reviewDto.description() );
30          }
31  
32          return review;
33      }
34  
35      @Override
36      public Review toEntity(ReviewDto reviewDto) {
37          if ( reviewDto == null ) {
38              return null;
39          }
40  
41          Review review = new Review();
42  
43          review.setAppUser( reviewDtoToAppUser( reviewDto ) );
44          review.setBoardGame( reviewDtoToBoardGame( reviewDto ) );
45          review.setPublicID( reviewDto.publicID() );
46          review.setDescription( reviewDto.description() );
47  
48          return review;
49      }
50  
51      @Override
52      public ReviewDto toDto(Review review) {
53          if ( review == null ) {
54              return null;
55          }
56  
57          UUID appUserPublicID = null;
58          String appUserName = null;
59          UUID boardGamePublicID = null;
60          UUID publicID = null;
61          String description = null;
62  
63          appUserPublicID = reviewAppUserPublicID( review );
64          appUserName = reviewAppUserName( review );
65          boardGamePublicID = reviewBoardGamePublicID( review );
66          publicID = review.getPublicID();
67          description = review.getDescription();
68  
69          ReviewDto reviewDto = new ReviewDto( publicID, description, boardGamePublicID, appUserPublicID, appUserName );
70  
71          return reviewDto;
72      }
73  
74      @Override
75      public Review partialUpdate(Review review, ReviewDto reviewDto) {
76          if ( reviewDto == null ) {
77              return review;
78          }
79  
80          if ( review.getAppUser() == null ) {
81              review.setAppUser( new AppUser() );
82          }
83          reviewDtoToAppUser1( reviewDto, review.getAppUser() );
84          if ( review.getBoardGame() == null ) {
85              review.setBoardGame( new BoardGame() );
86          }
87          reviewDtoToBoardGame1( reviewDto, review.getBoardGame() );
88          if ( reviewDto.publicID() != null ) {
89              review.setPublicID( reviewDto.publicID() );
90          }
91          if ( reviewDto.description() != null ) {
92              review.setDescription( reviewDto.description() );
93          }
94  
95          return review;
96      }
97  
98      protected AppUser reviewDtoToAppUser(ReviewDto reviewDto) {
99          if ( reviewDto == null ) {
100             return null;
101         }
102 
103         AppUser appUser = new AppUser();
104 
105         appUser.setPublicID( reviewDto.appUserPublicID() );
106         appUser.setName( reviewDto.appUserName() );
107 
108         return appUser;
109     }
110 
111     protected BoardGame reviewDtoToBoardGame(ReviewDto reviewDto) {
112         if ( reviewDto == null ) {
113             return null;
114         }
115 
116         BoardGame boardGame = new BoardGame();
117 
118         boardGame.setPublicID( reviewDto.boardGamePublicID() );
119 
120         return boardGame;
121     }
122 
123     private UUID reviewAppUserPublicID(Review review) {
124         if ( review == null ) {
125             return null;
126         }
127         AppUser appUser = review.getAppUser();
128         if ( appUser == null ) {
129             return null;
130         }
131         UUID publicID = appUser.getPublicID();
132         if ( publicID == null ) {
133             return null;
134         }
135         return publicID;
136     }
137 
138     private String reviewAppUserName(Review review) {
139         if ( review == null ) {
140             return null;
141         }
142         AppUser appUser = review.getAppUser();
143         if ( appUser == null ) {
144             return null;
145         }
146         String name = appUser.getName();
147         if ( name == null ) {
148             return null;
149         }
150         return name;
151     }
152 
153     private UUID reviewBoardGamePublicID(Review review) {
154         if ( review == null ) {
155             return null;
156         }
157         BoardGame boardGame = review.getBoardGame();
158         if ( boardGame == null ) {
159             return null;
160         }
161         UUID publicID = boardGame.getPublicID();
162         if ( publicID == null ) {
163             return null;
164         }
165         return publicID;
166     }
167 
168     protected void reviewDtoToAppUser1(ReviewDto reviewDto, AppUser mappingTarget) {
169         if ( reviewDto == null ) {
170             return;
171         }
172 
173         if ( reviewDto.appUserPublicID() != null ) {
174             mappingTarget.setPublicID( reviewDto.appUserPublicID() );
175         }
176         if ( reviewDto.appUserName() != null ) {
177             mappingTarget.setName( reviewDto.appUserName() );
178         }
179     }
180 
181     protected void reviewDtoToBoardGame1(ReviewDto reviewDto, BoardGame mappingTarget) {
182         if ( reviewDto == null ) {
183             return;
184         }
185 
186         if ( reviewDto.boardGamePublicID() != null ) {
187             mappingTarget.setPublicID( reviewDto.boardGamePublicID() );
188         }
189     }
190 }