#1965 - Upgrade optional Validation API support to 3.0.

This commit is contained in:
Oliver Drotbohm
2023-05-03 17:58:46 +02:00
parent 55a8c988e2
commit 5e3ec971ff
7 changed files with 29 additions and 34 deletions

View File

@@ -557,14 +557,14 @@
<dependency>
<groupId>jakarta.validation</groupId>
<artifactId>jakarta.validation-api</artifactId>
<version>2.0.2</version>
<version>3.0.2</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.2.0.Final</version>
<version>8.0.0.Final</version>
<scope>test</scope>
</dependency>

View File

@@ -15,11 +15,10 @@
*/
package org.springframework.hateoas;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
/**
* @author Oliver Drotbohm
*/

View File

@@ -15,6 +15,16 @@
*/
package org.springframework.hateoas.mediatype;
import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
import java.beans.PropertyDescriptor;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
@@ -26,16 +36,6 @@ import java.util.function.Supplier;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.Email;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import org.reactivestreams.Publisher;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.BeanWrapper;
@@ -73,7 +73,7 @@ public class PropertyUtils {
private static final Map<ResolvableType, ResolvableType> DOMAIN_TYPE_CACHE = new ConcurrentReferenceHashMap<>();
private static final Map<ResolvableType, InputPayloadMetadata> METADATA_CACHE = new ConcurrentReferenceHashMap<>();
private static final Set<String> FIELDS_TO_IGNORE = new HashSet<>(Arrays.asList("class", "links"));
private static final boolean JSR_303_PRESENT = ClassUtils.isPresent("javax.validation.constraints.Email",
private static final boolean JSR_303_PRESENT = ClassUtils.isPresent("jakarta.validation.constraints.Email",
PropertyUtils.class.getClassLoader());
private static final List<Class<?>> TYPES_TO_UNWRAP = new ArrayList<>(
Arrays.asList(EntityModel.class, CollectionModel.class, HttpEntity.class));

View File

@@ -17,6 +17,11 @@ package org.springframework.hateoas.mediatype;
import static org.assertj.core.api.Assertions.*;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.Getter;
@@ -30,12 +35,6 @@ import java.util.Map;
import java.util.Optional;
import java.util.stream.Stream;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.Range;
import org.hibernate.validator.constraints.URL;
import org.junit.jupiter.api.DynamicTest;

View File

@@ -17,6 +17,12 @@ package org.springframework.hateoas.mediatype.hal.forms;
import static org.assertj.core.api.Assertions.*;
import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Getter;
import java.math.BigDecimal;
@@ -25,13 +31,6 @@ import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.Range;
import org.junit.jupiter.api.Test;

View File

@@ -17,6 +17,8 @@ package org.springframework.hateoas.mediatype.hal.forms;
import static org.assertj.core.api.Assertions.*;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Getter;
import net.minidev.json.JSONArray;
@@ -29,9 +31,6 @@ import java.util.List;
import java.util.Locale;
import java.util.function.Consumer;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;

View File

@@ -15,12 +15,11 @@
*/
package org.springframework.hateoas.support;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.With;
import javax.validation.constraints.NotNull;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
/**