Skip to content

Commit 2564c14

Browse files
author
Ivan Franchin
committed
remove mapstruct dependency and run npm upgrade in jobs-ui
1 parent 3fa594b commit 2564c14

File tree

6 files changed

+540
-508
lines changed

6 files changed

+540
-508
lines changed

jobs-api/pom.xml

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
<properties>
1919
<java.version>17</java.version>
2020
<okta-spring.version>3.0.1</okta-spring.version>
21-
<org.mapstruct.version>1.5.3.Final</org.mapstruct.version>
2221
<lombok-mapstruct-binding.version>0.2.0</lombok-mapstruct-binding.version>
2322
<springdoc-openapi.version>2.0.3</springdoc-openapi.version>
2423
</properties>
@@ -44,13 +43,6 @@
4443
<version>${okta-spring.version}</version>
4544
</dependency>
4645

47-
<!-- Mapstruct -->
48-
<dependency>
49-
<groupId>org.mapstruct</groupId>
50-
<artifactId>mapstruct</artifactId>
51-
<version>${org.mapstruct.version}</version>
52-
</dependency>
53-
5446
<!-- SpringDoc OpenApi -->
5547
<dependency>
5648
<groupId>org.springdoc</groupId>
@@ -84,29 +76,6 @@
8476
</excludes>
8577
</configuration>
8678
</plugin>
87-
<plugin>
88-
<groupId>org.apache.maven.plugins</groupId>
89-
<artifactId>maven-compiler-plugin</artifactId>
90-
<configuration>
91-
<annotationProcessorPaths>
92-
<path>
93-
<groupId>org.projectlombok</groupId>
94-
<artifactId>lombok</artifactId>
95-
<version>${lombok.version}</version>
96-
</path>
97-
<path>
98-
<groupId>org.projectlombok</groupId>
99-
<artifactId>lombok-mapstruct-binding</artifactId>
100-
<version>${lombok-mapstruct-binding.version}</version>
101-
</path>
102-
<path>
103-
<groupId>org.mapstruct</groupId>
104-
<artifactId>mapstruct-processor</artifactId>
105-
<version>${org.mapstruct.version}</version>
106-
</path>
107-
</annotationProcessorPaths>
108-
</configuration>
109-
</plugin>
11079
</plugins>
11180
</build>
11281

jobs-api/src/main/java/com/ivanfranchin/jobsapi/mapper/JobMapper.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,12 @@
44
import com.ivanfranchin.jobsapi.rest.dto.CreateJobRequest;
55
import com.ivanfranchin.jobsapi.rest.dto.JobResponse;
66
import com.ivanfranchin.jobsapi.rest.dto.UpdateJobRequest;
7-
import org.mapstruct.Mapper;
8-
import org.mapstruct.Mapping;
9-
import org.mapstruct.MappingTarget;
10-
import org.mapstruct.NullValuePropertyMappingStrategy;
117

12-
@Mapper(
13-
componentModel = "spring",
14-
nullValuePropertyMappingStrategy = NullValuePropertyMappingStrategy.IGNORE
15-
)
168
public interface JobMapper {
179

1810
JobResponse toJobResponse(Job job);
1911

20-
@Mapping(target = "id", ignore = true)
21-
@Mapping(target = "createDate", ignore = true)
2212
Job toJob(CreateJobRequest createJobRequest);
2313

24-
@Mapping(target = "id", ignore = true)
25-
@Mapping(target = "createDate", ignore = true)
26-
void updateJobFromRequest(UpdateJobRequest updateJobRequest, @MappingTarget Job job);
14+
void updateJobFromRequest(UpdateJobRequest updateJobRequest, Job job);
2715
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package com.ivanfranchin.jobsapi.mapper;
2+
3+
import com.ivanfranchin.jobsapi.model.Job;
4+
import com.ivanfranchin.jobsapi.rest.dto.CreateJobRequest;
5+
import com.ivanfranchin.jobsapi.rest.dto.JobResponse;
6+
import com.ivanfranchin.jobsapi.rest.dto.UpdateJobRequest;
7+
import org.springframework.stereotype.Service;
8+
9+
@Service
10+
public class JobMapperImpl implements JobMapper {
11+
12+
@Override
13+
public JobResponse toJobResponse(Job job) {
14+
return job == null ?
15+
null : new JobResponse(job.getId(), job.getTitle(), job.getCompany(), job.getLogoUrl(), job.getDescription(), job.getCreateDate());
16+
}
17+
18+
@Override
19+
public Job toJob(CreateJobRequest createJobRequest) {
20+
return new Job(createJobRequest.getTitle(), createJobRequest.getCompany(), createJobRequest.getLogoUrl(), createJobRequest.getDescription());
21+
}
22+
23+
@Override
24+
public void updateJobFromRequest(UpdateJobRequest updateJobRequest, Job job) {
25+
if (updateJobRequest == null) {
26+
return;
27+
}
28+
29+
if (updateJobRequest.getTitle() != null) {
30+
job.setTitle(updateJobRequest.getTitle());
31+
}
32+
if (updateJobRequest.getCompany() != null) {
33+
job.setCompany(updateJobRequest.getCompany());
34+
}
35+
if (updateJobRequest.getLogoUrl() != null) {
36+
job.setLogoUrl(updateJobRequest.getLogoUrl());
37+
}
38+
if (updateJobRequest.getDescription() != null) {
39+
job.setDescription(updateJobRequest.getDescription());
40+
}
41+
}
42+
}

jobs-api/src/main/java/com/ivanfranchin/jobsapi/model/Job.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,11 @@ public class Job {
3333
public Job() {
3434
this.createDate = Instant.ofEpochSecond(Instant.now().getEpochSecond()).toString();
3535
}
36+
37+
public Job(String title, String company, String logoUrl, String description) {
38+
this.title = title;
39+
this.company = company;
40+
this.logoUrl = logoUrl;
41+
this.description = description;
42+
}
3643
}

jobs-api/src/main/java/com/ivanfranchin/jobsapi/runner/DatabaseInitializer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ public void run(String... args) {
7373
"Facebook;https://upload.wikimedia.org/wikipedia/commons/thumb/8/89/Facebook_Logo_%282019%29.svg/500px-Facebook_Logo_%282019%29.svg.png",
7474
"Yahoo;https://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Yahoo%21_%282019%29.svg/420px-Yahoo%21_%282019%29.svg.png",
7575
"Microsoft;https://upload.wikimedia.org/wikipedia/commons/thumb/9/96/Microsoft_logo_%282012%29.svg/440px-Microsoft_logo_%282012%29.svg.png",
76-
"Takeaway;https://upload.wikimedia.org/wikipedia/de/1/1d/Takeaway.com_logo.svg",
76+
"Just Eat Takeaway;https://upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Just_Eat_Takeaway_Logo_6.2020.svg/2880px-Just_Eat_Takeaway_Logo_6.2020.svg.png",
7777
"Oracle;https://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Oracle_Logo.svg/440px-Oracle_Logo.svg.png");
7878
private static final List<String> LOCATIONS = Arrays.asList("Berlin/Germany", "New York City/US", "Porto/Portugal",
7979
"Sao Paulo/Brazil");

0 commit comments

Comments
 (0)