Refactoring

This commit is contained in:
2026-03-25 23:41:30 +01:00
parent 8a8db1e8a1
commit fc4386ac99
15 changed files with 200 additions and 183 deletions

View File

@@ -38,6 +38,8 @@ public record InputFile(String sourceFileName, List<Message> messages) {
if (messages == null) {
throw new IllegalArgumentException("Messages must not be null");
}
// Defensive copy to ensure immutability
messages = List.copyOf(messages);
}
/**

View File

@@ -40,6 +40,8 @@ public record Message(int messagePosition, List<Segment> segments) {
if (segments == null) {
throw new IllegalArgumentException("Segments must not be null");
}
// Defensive copy to ensure immutability
segments = List.copyOf(segments);
}
/**

View File

@@ -4,7 +4,6 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* Represents a segment in a message from an input file.
@@ -46,6 +45,8 @@ public record Segment(String segmentName, int segmentPosition, List<Field> field
if (fields == null) {
throw new IllegalArgumentException("Fields must not be null");
}
// Defensive copy to ensure immutability
fields = List.copyOf(fields);
}
/**

View File

@@ -5,8 +5,6 @@ import java.util.List;
import de.gecheckt.asv.domain.model.Field;
import de.gecheckt.asv.domain.model.InputFile;
import de.gecheckt.asv.domain.model.Message;
import de.gecheckt.asv.domain.model.Segment;
import de.gecheckt.asv.validation.model.ValidationError;
import de.gecheckt.asv.validation.model.ValidationResult;
import de.gecheckt.asv.validation.model.ValidationSeverity;

View File

@@ -1,10 +1,7 @@
package de.gecheckt.asv.validation.model;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* Repräsentiert das Ergebnis einer Validierung mit allen gefundenen Fehlern, Warnungen und Infos.

View File

@@ -3,7 +3,6 @@ package de.gecheckt.asv.validation.structure;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import de.gecheckt.asv.domain.model.Field;
import de.gecheckt.asv.domain.model.InputFile;