From 4bb829cbd1026ec10dc685277467d30523c90b95 Mon Sep 17 00:00:00 2001 From: Antoine Rey <antoine.rey@free.fr> Date: Tue, 13 Oct 2015 18:41:18 +0200 Subject: [PATCH] Fix #101 display the pet type when using the JDBC profile --- .../petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java | 3 +++ .../springframework/samples/petclinic/web/PetValidator.java | 2 +- .../samples/petclinic/service/AbstractClinicServiceTests.java | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java b/src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java index 0a471b4..7103dc4 100644 --- a/src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java +++ b/src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java @@ -35,6 +35,7 @@ import org.springframework.samples.petclinic.model.Pet; import org.springframework.samples.petclinic.model.PetType; import org.springframework.samples.petclinic.model.Visit; import org.springframework.samples.petclinic.repository.OwnerRepository; +import org.springframework.samples.petclinic.util.EntityUtils; import org.springframework.stereotype.Repository; /** @@ -114,7 +115,9 @@ public class JdbcOwnerRepositoryImpl implements OwnerRepository { params, new JdbcPetVisitExtractor() ); + Collection<PetType> petTypes = getPetTypes(); for (JdbcPet pet : pets) { + pet.setType(EntityUtils.getById(petTypes, PetType.class, pet.getTypeId())); owner.addPet(pet); } } diff --git a/src/main/java/org/springframework/samples/petclinic/web/PetValidator.java b/src/main/java/org/springframework/samples/petclinic/web/PetValidator.java index 0621c98..5784278 100644 --- a/src/main/java/org/springframework/samples/petclinic/web/PetValidator.java +++ b/src/main/java/org/springframework/samples/petclinic/web/PetValidator.java @@ -58,7 +58,7 @@ public class PetValidator implements Validator { */ @Override public boolean supports(Class<?> clazz) { - return Pet.class.equals(clazz); + return Pet.class.isAssignableFrom(clazz); } diff --git a/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java b/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java index 428c285..473acdc 100644 --- a/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java +++ b/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java @@ -69,6 +69,8 @@ public abstract class AbstractClinicServiceTests { Owner owner = this.clinicService.findOwnerById(1); assertThat(owner.getLastName()).startsWith("Franklin"); assertThat(owner.getPets().size()).isEqualTo(1); + assertThat(owner.getPets().get(0).getType()).isNotNull(); + assertThat(owner.getPets().get(0).getType().getName()).isEqualTo("cat"); } @Test -- GitLab