package example.domain.services.simple;
import example.domain.Document;
import example.domain.DocumentValidator;
import example.domain.Field;
import example.domain.Property;
import org.springframework.stereotype.Service;
@Service
public class ExampleDocumentValidator implements DocumentValidator {
public void validate(Document document) {
checkForError(document, Field.one);
checkForError(document, Field.two);
}
private void checkForError(Document document, Field field) {
Property property = document.get(field);
String value = property.getValue();
if ("error".equalsIgnoreCase(value)) {
property = property.copyWithMessage("Oops - <error> was provided");
document.set(field, property);
}
}
}