Skip to content

Commit dd6f360

Browse files
committed
feat: remove year to facilitate the demo
Signed-off-by: Otavio Santana <[email protected]>
1 parent ccb24e0 commit dd6f360

File tree

6 files changed

+49
-26
lines changed

6 files changed

+49
-26
lines changed

src/main/java/com/otaviojava/demos/ddd/App.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,24 @@
1616
import jakarta.enterprise.inject.se.SeContainerInitializer;
1717
import net.datafaker.Faker;
1818
import net.datafaker.providers.base.Vehicle;
19+
import org.eclipse.jnosql.mapping.DatabaseQualifier;
20+
21+
import java.util.logging.Logger;
1922

2023

2124
public class App {
2225

26+
private static final Logger LOGGER = Logger.getLogger(App.class.getName());
2327

2428
public static void main(String[] args) {
2529
Faker faker = new Faker();
30+
LOGGER.info("Starting the application");
2631
try (SeContainer container = SeContainerInitializer.newInstance().initialize()) {
27-
Vehicle vehicle = faker.vehicle();
32+
var vehicle = faker.vehicle();
33+
var garage = container.select(Garage.class, DatabaseQualifier.ofDocument()).get();
34+
Car car = garage.park(garage.park(Car.of(vehicle)));
35+
LOGGER.info("Saving a car: " + car);
36+
2837
}
2938
}
3039

src/main/java/com/otaviojava/demos/ddd/Car.java

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,36 @@
11
package com.otaviojava.demos.ddd;
22

3-
import net.datafaker.Faker;
3+
import jakarta.nosql.Column;
4+
import jakarta.nosql.Entity;
5+
import jakarta.nosql.Id;
46
import net.datafaker.providers.base.Vehicle;
57

68
import java.time.Year;
79
import java.util.Objects;
810

11+
@Entity
912
public class Car {
1013

14+
@Id
1115
private String vin;
1216

17+
@Column
1318
private String transmission;
1419

20+
@Column
1521
private Manufacturer manufacturer;
1622

17-
private Year year;
18-
23+
@Column
1924
private Color color;
2025

21-
Car(String vin, String transmission, Manufacturer manufacturer, Year year, Color color) {
26+
@Deprecated
27+
Car() {
28+
}
29+
30+
Car(String vin, String transmission, Manufacturer manufacturer, Color color) {
2231
this.vin = vin;
2332
this.transmission = transmission;
2433
this.manufacturer = manufacturer;
25-
this.year = year;
2634
this.color = color;
2735
}
2836

@@ -38,10 +46,6 @@ public Manufacturer getManufacturer() {
3846
return manufacturer;
3947
}
4048

41-
public Year getYear() {
42-
return year;
43-
}
44-
4549
public Color getColor() {
4650
return color;
4751
}
@@ -66,7 +70,6 @@ public String toString() {
6670
"vin='" + vin + '\'' +
6771
", transmission='" + transmission + '\'' +
6872
", manufacturer=" + manufacturer +
69-
", year=" + year +
7073
", color=" + color +
7174
'}';
7275
}
@@ -80,7 +83,6 @@ public static Car of(Vehicle vehicle) {
8083
.vin(vehicle.vin())
8184
.transmission(vehicle.transmission())
8285
.manufacturer(new Manufacturer(vehicle.manufacturer(), vehicle.model()))
83-
.year(Year.now())
8486
.color(Color.valueOf(vehicle.color().toUpperCase()))
8587
.build();
8688
}

src/main/java/com/otaviojava/demos/ddd/CarBuilder.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
package com.otaviojava.demos.ddd;
22

3-
import java.time.Year;
43

54
public class CarBuilder {
65
private String vin;
76
private String transmission;
87
private Manufacturer manufacturer;
9-
private Year year;
108
private Color color;
119

1210
CarBuilder() {
@@ -27,17 +25,12 @@ public CarBuilder manufacturer(Manufacturer manufacturer) {
2725
return this;
2826
}
2927

30-
public CarBuilder year(Year year) {
31-
this.year = year;
32-
return this;
33-
}
34-
3528
public CarBuilder color(Color color) {
3629
this.color = color;
3730
return this;
3831
}
3932

4033
public Car build() {
41-
return new Car(vin, transmission, manufacturer, year, color);
34+
return new Car(vin, transmission, manufacturer, color);
4235
}
4336
}

src/main/java/com/otaviojava/demos/ddd/Color.java

Lines changed: 0 additions & 5 deletions
This file was deleted.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package com.otaviojava.demos.ddd;
2+
3+
import jakarta.data.repository.By;
4+
import jakarta.data.repository.Delete;
5+
import jakarta.data.repository.Find;
6+
import jakarta.data.repository.Repository;
7+
import jakarta.data.repository.Save;
8+
9+
@Repository
10+
public interface Garage {
11+
12+
@Save
13+
Car park(Car car);
14+
15+
@Delete
16+
void unpark(Car car);
17+
18+
@Find
19+
Car checkRegistration(@By("vin") String vin);
20+
}
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
package com.otaviojava.demos.ddd;
22

33

4-
public record Manufacturer(String name, String model) {
4+
import jakarta.nosql.Column;
5+
import jakarta.nosql.Embeddable;
6+
7+
@Embeddable(Embeddable.EmbeddableType.GROUPING)
8+
public record Manufacturer(@Column String name, @Column String model) {
59
}

0 commit comments

Comments
 (0)