FIX: Circuit 'created' serialization

This commit is contained in:
Patrick Haßel 2024-05-23 09:03:47 +02:00
parent de5d1bfc2c
commit e1d06adef0
4 changed files with 10 additions and 5 deletions

View File

@ -35,6 +35,11 @@
<artifactId>jackson-databind</artifactId> <artifactId>jackson-databind</artifactId>
<version>2.17.0</version> <version>2.17.0</version>
</dependency> </dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
<version>2.17.0</version>
</dependency>
<dependency> <dependency>
<groupId>org.apache.commons</groupId> <groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId> <artifactId>commons-math3</artifactId>

View File

@ -27,7 +27,7 @@ import static de.ph87.electro.circuit.CircuitIOService.write;
public class Circuit { public class Circuit {
@Getter @Getter
private final ZonedDateTime created; private final String created;
private final List<Part> parts = new ArrayList<>(); private final List<Part> parts = new ArrayList<>();
@ -36,7 +36,7 @@ public class Circuit {
private boolean dirty = false; private boolean dirty = false;
public Circuit() { public Circuit() {
this.created = ZonedDateTime.now(); this.created = ZonedDateTime.now().format(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
} }
public Circuit(final CircuitDto dto) { public Circuit(final CircuitDto dto) {
@ -100,7 +100,7 @@ public class Circuit {
return; return;
} }
try { try {
final File file = new File("./data/%s.json".formatted(created.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME))); final File file = new File("./data/%s.json".formatted(created));
if (file.getParentFile().mkdirs()) { if (file.getParentFile().mkdirs()) {
log.info("Directory created: {}", file.getParent()); log.info("Directory created: {}", file.getParent());
} }

View File

@ -6,7 +6,6 @@ import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.ToString; import lombok.ToString;
import java.time.ZonedDateTime;
import java.util.List; import java.util.List;
@Getter @Getter
@ -14,7 +13,7 @@ import java.util.List;
@NoArgsConstructor @NoArgsConstructor
public class CircuitDto { public class CircuitDto {
private ZonedDateTime created; private String created;
private List<PartDto> parts; private List<PartDto> parts;

View File

@ -38,6 +38,7 @@ class CircuitIOServiceTest {
final ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray()); final ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray());
final Circuit reloaded = read(input); final Circuit reloaded = read(input);
assertEquals(original.getCreated(), reloaded.getCreated());
assertEquals(original.getPartCount(), reloaded.getPartCount()); assertEquals(original.getPartCount(), reloaded.getPartCount());
original.streamParts().forEach(originalPart -> { original.streamParts().forEach(originalPart -> {
System.out.printf("Part: %s\n", originalPart.getUuid()); System.out.printf("Part: %s\n", originalPart.getUuid());