Einfache Abschätzung mit find
%%bash
cd spring-framework-petclinic/
find . -name *.java | xargs wc -l | head -n-1 > ../file_sizes.txt
head ../file_sizes.txt
117 ./.mvn/wrapper/MavenWrapperDownloader.java 47 ./src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java 48 ./src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java 153 ./src/main/java/org/springframework/samples/petclinic/model/Owner.java 5 ./src/main/java/org/springframework/samples/petclinic/model/package-info.java 55 ./src/main/java/org/springframework/samples/petclinic/model/Person.java 111 ./src/main/java/org/springframework/samples/petclinic/model/Pet.java 29 ./src/main/java/org/springframework/samples/petclinic/model/PetType.java 30 ./src/main/java/org/springframework/samples/petclinic/model/Specialty.java 78 ./src/main/java/org/springframework/samples/petclinic/model/Vet.java
Genauere Variante in awk
%%bash
cd spring-framework-petclinic/
find . -name *.java | xargs cat | awk ()(lkjftkihdsakjrdsgfkjlghfxylkjgf()(8[][fds]))
Elegantere Variante mit cloc
%%bash
cloc spring-framework-petclinic/
119 text files. 119 unique files. 24 files ignored. github.com/AlDanial/cloc v 1.82 T=1.42 s (67.6 files/s, 17101.6 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- SVG 2 0 0 9158 CSS 1 852 28 7131 Java 59 593 1395 2163 Maven 1 42 32 528 SQL 8 71 0 414 JSP 9 35 0 367 Sass 4 64 2 318 Bourne Shell 1 33 62 215 XML 8 54 94 189 Markdown 1 74 0 161 DOS Batch 1 35 0 147 YAML 1 5 2 22 ------------------------------------------------------------------------------- SUM: 96 1858 1615 20813 -------------------------------------------------------------------------------
Größeninformationen für jede Datei per cloc
%%bash
cd spring-framework-petclinic/
cloc . --by-file --quiet --csv --out ../lines.csv
head ../lines.csv
language,filename,blank,comment,code,"github.com/AlDanial/cloc v 1.82 T=0.46 s (207.9 files/s, 52601.5 lines/s)" SVG,./src/main/webapp/resources/fonts/varela_round-webfont.svg,0,0,7875 CSS,./src/main/webapp/resources/css/petclinic.css,852,28,7131 SVG,./src/main/webapp/resources/fonts/montserrat-webfont.svg,0,0,1283 Maven,./pom.xml,42,32,528 Bourne Shell,./mvnw,33,62,215 Sass,./src/main/webapp/resources/scss/petclinic.scss,39,0,171 Markdown,./readme.md,74,0,161 Java,./src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java,26,5,150 DOS Batch,./mvnw.cmd,35,0,147
git log
in Action
%%bash
cd spring-framework-petclinic/
git log -n 2
commit 0bf6721cfd16facda30fb3bc72085345ea9d278f Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri Jul 7 21:58:11 2023 +0000 Bump h2 from 2.1.214 to 2.2.220 Bumps [h2](https://github.com/h2database/h2database) from 2.1.214 to 2.2.220. - [Release notes](https://github.com/h2database/h2database/releases) - [Commits](https://github.com/h2database/h2database/compare/version-2.1.214...version-2.2.220) --- updated-dependencies: - dependency-name: com.h2database:h2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> commit b16554f3cb4e24a74a23d80895847fdb59c46ef9 Author: Antoine Rey <antoine.rey@free.fr> Date: Tue May 16 08:50:00 2023 +0200 Bump to Spring Framework 6.0.9
Änderungen pro Datei mit git log
%%bash
cd spring-framework-petclinic/
git log --name-only --no-merges --format="" -- *.java > ../changes.txt
cat ../changes.txt
src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/model/Specialty.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVisitRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJdbcTests.java src/main/java/org/springframework/samples/petclinic/PetclinicInitializer.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/model/Specialty.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/OneToManyResultSetExtractor.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetVisitExtractor.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/OneToManyResultSetExtractor.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJdbcTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceSpringDataJpaTests.java src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java .mvn/wrapper/MavenWrapperDownloader.java src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJdbcTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceSpringDataJpaTests.java src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/PetclinicInitializer.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/PetclinicInitializer.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java src/main/java/org/springframework/samples/petclinic/PetclinicInitializer.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/package-info.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetVisitExtractor.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/package-info.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/package-info.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepository.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/package-info.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJdbcTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceSpringDataJpaTests.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetVisitExtractor.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetVisitExtractor.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRowMapper.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VetsAtomView.java src/test/java/org/springframework/samples/petclinic/web/VetControllerTest.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/test/java/org/springframework/samples/petclinic/model/OwnerTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/VetsAtomView.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/model/ValidatorTest.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepository.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/web/VetsAtomView.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/test/java/org/springframework/samples/petclinic/model/OwnerTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJdbcTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceSpringDataJpaTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJdbcTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceJpaTests.java src/test/java/org/springframework/samples/petclinic/service/ClinicServiceSpringDataJpaTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVisitRepositoryTests.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/model/Specialty.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVisitRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VetsAtomView.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/test/java/org/springframework/samples/petclinic/model/OwnerTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewWithContainerTest.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/VetsAtomView.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewWithContainerTest.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/test/java/org/springframework/samples/petclinic/model/OwnerTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/OwnerTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/model/Specialty.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/OwnerTests.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java src/main/java/org/springframework/samples/petclinic/model/Owner.java src/main/java/org/springframework/samples/petclinic/model/Person.java src/main/java/org/springframework/samples/petclinic/model/Pet.java src/main/java/org/springframework/samples/petclinic/model/PetType.java src/main/java/org/springframework/samples/petclinic/model/Specialty.java src/main/java/org/springframework/samples/petclinic/model/Vet.java src/main/java/org/springframework/samples/petclinic/model/Vets.java src/main/java/org/springframework/samples/petclinic/model/Visit.java src/main/java/org/springframework/samples/petclinic/model/package-info.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVisitRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/OwnerTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/main/java/org/springframework/samples/petclinic/util/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/validation/package-info.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetValidator.java src/main/java/org/springframework/samples/petclinic/validation/PetValidator.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/main/java/org/springframework/samples/petclinic/Pet.java src/main/java/org/springframework/samples/petclinic/Vets.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/aspects/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/aspects/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/aspects/UsageLogAspect.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/SpringDataOwnerRepositoryTests.java src/main/java/org/springframework/samples/petclinic/Vet.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepository.java src/main/java/org/springframework/samples/petclinic/Visit.java src/main/java/org/springframework/samples/petclinic/Visit.java src/main/java/org/springframework/samples/petclinic/Pet.java src/main/java/org/springframework/samples/petclinic/web/ClinicBindingInitializer.java src/main/java/org/springframework/samples/petclinic/web/PetTypeEditor.java src/main/java/org/springframework/samples/petclinic/web/PetTypeFormatter.java src/main/java/org/springframework/samples/petclinic/Owner.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/CrashController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/Pet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/SpringDataOwnerRepositoryTests.java src/main/java/org/springframework/samples/petclinic/Pet.java src/main/java/org/springframework/samples/petclinic/Visit.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/web/ClinicBindingInitializer.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/Person.java src/main/java/org/springframework/samples/petclinic/Vets.java src/main/java/org/springframework/samples/petclinic/aspects/AbstractTraceAspect.java src/main/java/org/springframework/samples/petclinic/aspects/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/aspects/UsageLogAspect.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcClinicImplMBean.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaClinicImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/SpringDataClinic.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataOwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataPetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVetRepository.java src/main/java/org/springframework/samples/petclinic/repository/springdatajpa/SpringDataVisitRepository.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeEditor.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/springdatajpa/SpringDataOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java src/main/java/org/springframework/samples/petclinic/Clinic.java src/main/java/org/springframework/samples/petclinic/Owner.java src/main/java/org/springframework/samples/petclinic/aspects/UsageLogAspect.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcClinicImpl.java src/main/java/org/springframework/samples/petclinic/repository/OwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/PetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VetRepository.java src/main/java/org/springframework/samples/petclinic/repository/VisitRepository.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcClinicImplMBean.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcPetRowMapper.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVisitRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jdbc/package-info.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaClinicImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/JpaOwnerRepositoryImpl.java src/main/java/org/springframework/samples/petclinic/repository/jpa/SpringDataClinic.java src/main/java/org/springframework/samples/petclinic/repository/jpa/SpringDataOwnerRepository.java src/main/java/org/springframework/samples/petclinic/repository/jpa/package-info.java src/main/java/org/springframework/samples/petclinic/service/ClinicService.java src/main/java/org/springframework/samples/petclinic/service/ClinicServiceImpl.java src/main/java/org/springframework/samples/petclinic/web/ClinicBindingInitializer.java src/main/java/org/springframework/samples/petclinic/web/ClinicController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/PetTypeEditor.java src/main/java/org/springframework/samples/petclinic/web/VetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/test/java/org/springframework/samples/petclinic/AbstractOwnerRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractPetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVetRepositoryTests.java src/test/java/org/springframework/samples/petclinic/AbstractVisitRepositoryTests.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaOwnerRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaPetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVetRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaVisitRepositoryImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/SpringDataOwnerRepositoryTests.java src/main/java/org/springframework/samples/petclinic/web/ClinicController.java src/main/java/org/springframework/samples/petclinic/Visit.java src/main/java/org/springframework/samples/petclinic/validation/VisitValidator.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/NamedEntity.java src/main/java/org/springframework/samples/petclinic/Owner.java src/main/java/org/springframework/samples/petclinic/web/EditPetController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/Owner.java src/main/java/org/springframework/samples/petclinic/Person.java src/main/java/org/springframework/samples/petclinic/validation/OwnerValidator.java src/main/java/org/springframework/samples/petclinic/web/AddOwnerController.java src/main/java/org/springframework/samples/petclinic/web/EditOwnerController.java src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/test/java/org/springframework/samples/petclinic/jpa/SpringDataClinicTests.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcClinicImpl.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcClinicImplMBean.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/jpa/JpaClinicImpl.java src/main/java/org/springframework/samples/petclinic/jpa/SpringDataClinic.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcClinicImplTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaClinicImplTests.java src/main/java/org/springframework/samples/petclinic/web/AddOwnerController.java src/main/java/org/springframework/samples/petclinic/web/AddPetController.java src/main/java/org/springframework/samples/petclinic/web/AddVisitController.java src/main/java/org/springframework/samples/petclinic/web/ClinicController.java src/main/java/org/springframework/samples/petclinic/web/EditOwnerController.java src/main/java/org/springframework/samples/petclinic/web/EditPetController.java src/main/java/org/springframework/samples/petclinic/web/FindOwnersController.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaClinicTests.java src/main/java/org/springframework/samples/petclinic/jpa/JpaClinic.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcClinic.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcClinicMBean.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcPet.java src/test/java/org/springframework/samples/petclinic/AbstractClinicTests.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/test/java/org/springframework/samples/petclinic/jdbc/JdbcClinicTests.java src/test/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaClinicTests.java src/main/java/org/springframework/samples/petclinic/BaseEntity.java src/main/java/org/springframework/samples/petclinic/Vet.java src/main/java/org/springframework/samples/petclinic/jpa/EntityManagerClinic.java src/test/java/org/springframework/samples/petclinic/jpa/JpaClinicTests.java src/main/java/org/springframework/samples/petclinic/BaseEntity.java src/main/java/org/springframework/samples/petclinic/Clinic.java src/main/java/org/springframework/samples/petclinic/NamedEntity.java src/main/java/org/springframework/samples/petclinic/Owner.java src/main/java/org/springframework/samples/petclinic/Person.java src/main/java/org/springframework/samples/petclinic/Pet.java src/main/java/org/springframework/samples/petclinic/PetType.java src/main/java/org/springframework/samples/petclinic/Specialty.java src/main/java/org/springframework/samples/petclinic/Vet.java src/main/java/org/springframework/samples/petclinic/Visit.java src/main/java/org/springframework/samples/petclinic/hibernate/HibernateClinic.java src/main/java/org/springframework/samples/petclinic/hibernate/package-info.java src/main/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinic.java src/main/java/org/springframework/samples/petclinic/jpa/EntityManagerClinic.java src/main/java/org/springframework/samples/petclinic/web/AddPetController.java src/main/java/org/springframework/samples/petclinic/web/AddVisitController.java src/main/java/org/springframework/samples/petclinic/web/ClinicController.java src/main/java/org/springframework/samples/petclinic/web/EditOwnerController.java src/main/java/org/springframework/samples/petclinic/web/EditPetController.java src/test/java/org/springframework/samples/petclinic/AbstractClinicTests.java src/test/java/org/springframework/samples/petclinic/aspects/UsageLogAspectTests.java src/test/java/org/springframework/samples/petclinic/hibernate/HibernateClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/HibernateEntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/JpaClinicTests.java src/main/java/org/springframework/samples/petclinic/web/ClinicController.java src/main/java/org/springframework/samples/petclinic/web/AddOwnerController.java src/main/java/org/springframework/samples/petclinic/web/AddPetController.java src/main/java/org/springframework/samples/petclinic/web/AddVisitController.java src/main/java/org/springframework/samples/petclinic/web/EditOwnerController.java src/main/java/org/springframework/samples/petclinic/web/EditPetController.java src/main/java/org/springframework/samples/petclinic/web/FindOwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/HomeController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/Appointment.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentBook.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentForm.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/Appointments.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentsController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/StubAppointmentBook.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/Owner.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerSearchForm.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/StubOwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/Gender.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/Pet.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/PetController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/PetRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/StubPetRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/ExternalContext.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/Measurement.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/Unit.java src/main/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinic.java src/main/java/org/springframework/samples/petclinic/toplink/EssentialsHSQLPlatformWithNativeSequence.java src/main/java/org/springframework/samples/petclinic/toplink/package-info.java src/test/java/org/springframework/samples/petclinic/AbstractClinicTests.java src/test/java/org/springframework/samples/petclinic/hibernate/HibernateClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/AbstractJpaClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/EntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/HibernateEntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/OpenJpaEntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/AbstractClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/AbstractJpaClinicTests.java src/main/java/org/springframework/samples/petclinic/aspects/AbstractTraceAspect.java src/main/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinic.java src/test/java/org/springframework/samples/petclinic/jpa/AbstractJpaClinicTests.java src/test/java/org/springframework/samples/petclinic/hibernate/HibernateClinicTests.java src/test/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicTests.java src/test/java/org/springframework/samples/petclinic/PetClinicTestSuite.java src/main/java/org/springframework/samples/petclinic/config/DbcpDataSourceFactory.java src/main/java/org/springframework/samples/petclinic/BaseEntity.java src/main/java/org/springframework/samples/petclinic/Clinic.java src/main/java/org/springframework/samples/petclinic/NamedEntity.java src/main/java/org/springframework/samples/petclinic/Owner.java src/main/java/org/springframework/samples/petclinic/Person.java src/main/java/org/springframework/samples/petclinic/Pet.java src/main/java/org/springframework/samples/petclinic/PetType.java src/main/java/org/springframework/samples/petclinic/Specialty.java src/main/java/org/springframework/samples/petclinic/Vet.java src/main/java/org/springframework/samples/petclinic/Vets.java src/main/java/org/springframework/samples/petclinic/Visit.java src/main/java/org/springframework/samples/petclinic/aspects/AbstractTraceAspect.java src/main/java/org/springframework/samples/petclinic/aspects/CallMonitoringAspect.java src/main/java/org/springframework/samples/petclinic/aspects/UsageLogAspect.java src/main/java/org/springframework/samples/petclinic/config/DbcpDataSourceFactory.java src/main/java/org/springframework/samples/petclinic/hibernate/HibernateClinic.java src/main/java/org/springframework/samples/petclinic/hibernate/package-info.java src/main/java/org/springframework/samples/petclinic/jdbc/JdbcPet.java src/main/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinic.java src/main/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicMBean.java src/main/java/org/springframework/samples/petclinic/jdbc/package-info.java src/main/java/org/springframework/samples/petclinic/jpa/EntityManagerClinic.java src/main/java/org/springframework/samples/petclinic/jpa/package-info.java src/main/java/org/springframework/samples/petclinic/package-info.java src/main/java/org/springframework/samples/petclinic/toplink/EssentialsHSQLPlatformWithNativeSequence.java src/main/java/org/springframework/samples/petclinic/toplink/package-info.java src/main/java/org/springframework/samples/petclinic/util/EntityUtils.java src/main/java/org/springframework/samples/petclinic/validation/OwnerValidator.java src/main/java/org/springframework/samples/petclinic/validation/PetValidator.java src/main/java/org/springframework/samples/petclinic/validation/VisitValidator.java src/main/java/org/springframework/samples/petclinic/validation/package-info.java src/main/java/org/springframework/samples/petclinic/web/AddOwnerForm.java src/main/java/org/springframework/samples/petclinic/web/AddPetForm.java src/main/java/org/springframework/samples/petclinic/web/AddVisitForm.java src/main/java/org/springframework/samples/petclinic/web/ClinicBindingInitializer.java src/main/java/org/springframework/samples/petclinic/web/ClinicController.java src/main/java/org/springframework/samples/petclinic/web/EditOwnerForm.java src/main/java/org/springframework/samples/petclinic/web/EditPetForm.java src/main/java/org/springframework/samples/petclinic/web/FindOwnersForm.java src/main/java/org/springframework/samples/petclinic/web/PetTypeEditor.java src/main/java/org/springframework/samples/petclinic/web/VisitsAtomView.java src/main/java/org/springframework/samples/petclinic/web/package-info.java src/test/java/org/springframework/samples/petclinic/AbstractClinicTests.java src/test/java/org/springframework/samples/petclinic/OwnerTests.java src/test/java/org/springframework/samples/petclinic/PetClinicTestSuite.java src/test/java/org/springframework/samples/petclinic/hibernate/HibernateClinicTests.java src/test/java/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/AbstractJpaClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/EntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/HibernateEntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/jpa/OpenJpaEntityManagerClinicTests.java src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/Appointment.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentBook.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentForm.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/Appointments.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentsController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/StubAppointmentBook.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/Owner.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/Owner.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerSearchForm.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/StubOwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/PetController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/ExternalContext.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/ResponseContext.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/appointments/AppointmentsController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/Owner.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/OwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/StubOwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/Gender.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/Pet.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/PetController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/PetRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owners/pets/StubPetRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/pet/Gender.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/HomeController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/Owner.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/OwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/HomeController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/StubOwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/pet/StubPetRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/HomeController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/Owner.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/owner/OwnersController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/pet/Gender.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/pet/Pet.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/pet/PetController.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/pet/PetRepository.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/Measurement.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/ResponseContext.java org.springframework.samples.petclinic/src/main/java/org/springframework/samples/petclinic/util/Unit.java
In der Theorie: Datei mit Zeilenanzahlen direkt einlesen
!head -n 4 lines.csv
language,filename,blank,comment,code,"github.com/AlDanial/cloc v 1.82 T=0.46 s (207.9 files/s, 52601.5 lines/s)" SVG,./src/main/webapp/resources/fonts/varela_round-webfont.svg,0,0,7875 CSS,./src/main/webapp/resources/css/petclinic.css,852,28,7131 SVG,./src/main/webapp/resources/fonts/montserrat-webfont.svg,0,0,1283
import pandas as pd
pd.read_csv("lines.csv").head(3)
language | filename | blank | comment | code | github.com/AlDanial/cloc v 1.82 T=0.46 s (207.9 files/s, 52601.5 lines/s) | |
---|---|---|---|---|---|---|
0 | SVG | ./src/main/webapp/resources/fonts/varela_round... | 0 | 0 | 7875 | NaN |
1 | CSS | ./src/main/webapp/resources/css/petclinic.css | 852 | 28 | 7131 | NaN |
2 | SVG | ./src/main/webapp/resources/fonts/montserrat-w... | 0 | 0 | 1283 | NaN |
In der Praxis: Einlesen mit kleineren Anpassungen
lines = pd.read_csv("lines.csv", index_col=1)[:-1][['code']]
lines.index = lines.index.str[2:]
lines.head()
code | |
---|---|
filename | |
src/main/webapp/resources/fonts/varela_round-webfont.svg | 7875 |
src/main/webapp/resources/css/petclinic.css | 7131 |
src/main/webapp/resources/fonts/montserrat-webfont.svg | 1283 |
pom.xml | 528 |
mvnw | 215 |
Datei mit jeder geänderten Datei einlesen (+ Spaltennamen)
!head -n 5 changes.txt
src/main/java/org/springframework/samples/petclinic/web/OwnerController.java src/main/java/org/springframework/samples/petclinic/web/PetController.java src/main/java/org/springframework/samples/petclinic/web/VisitController.java src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java
change_per_file = pd.read_csv("changes.txt", names=['filepath'])
change_per_file.head()
filepath | |
---|---|
0 | src/main/java/org/springframework/samples/petc... |
1 | src/main/java/org/springframework/samples/petc... |
2 | src/main/java/org/springframework/samples/petc... |
3 | src/main/java/org/springframework/samples/petc... |
4 | src/main/java/org/springframework/samples/petc... |
Noch zu erledigen: Änderungen / Vorkommen der Dateien zählen
changes = pd.DataFrame(change_per_file['filepath'].value_counts())
changes.columns = ["changes"]
changes.head()
changes | |
---|---|
src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java | 27 |
src/main/java/org/springframework/samples/petclinic/web/OwnerController.java | 23 |
src/main/java/org/springframework/samples/petclinic/web/PetController.java | 22 |
src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java | 21 |
src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java | 20 |
Getrennte Daten zusammenführen
hotspots = changes.join(lines).dropna()
hotspots.head()
changes | code | |
---|---|---|
src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcOwnerRepositoryImpl.java | 27 | 98.0 |
src/main/java/org/springframework/samples/petclinic/web/OwnerController.java | 23 | 83.0 |
src/main/java/org/springframework/samples/petclinic/web/PetController.java | 22 | 76.0 |
src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java | 21 | 135.0 |
src/main/java/org/springframework/samples/petclinic/repository/jdbc/JdbcVetRepositoryImpl.java | 20 | 48.0 |
... das große Geheimnis
Wir brauchen: Datenformat (siehe unten) und Template (HTML-Datei)
{
'name': 'flare',
'children': [{
'name': 'src',
'children': [{
'name': 'main',
'children': [{
'name': 'java',
'children': [{
'name': 'org',
'children': [{
'name': 'springframework',
'children': [{
'name': 'samples',
'children': [{
'name': 'petclinic',
'children': [{
'name': 'repository',
'children': [{
'name': 'jdbc',
'children': [{
'name': 'JdbcOwnerRepositoryImpl.java (158.0 [27])',
'size': 158.0,
'color': '#b40426'
}, {
'name': 'JdbcVetRepositoryImpl.java (88.0 [20])',
'size': 88.0,
'color': '#f59d7e'
}, {
'name': 'JdbcVisitRepositoryImpl.java (103.0 [19])',
'size': 103.0,
'color': '#f7aa8c'
}, {
'name': 'JdbcPetRepositoryImpl.java (116.0 [17])',
'size': 116.0,
'color': '#f5c2aa'
}, {
'name': 'JdbcPetRowMapper.java (40.0 [13])',
'size': 40.0,
'color': '#d8dce2'
}, {
'name': 'JdbcPet.java (48.0 [8])',
'size': 48.0,
'color': '#9dbdff'
}, {
'name': 'JdbcVisitRowMapper.java (40.0 [8])',
'size': 40.0,
'color': '#9dbdff'
}, {
'name': 'JdbcPetVisitExtractor.java (53.0 [4])',
'size': 53.0,
'color': '#688aef'
}, {
'name': 'OneToManyResultSetExtractor.java (159.0 [2])',
'size': 159.0,
'color': '#506bda'
}, {
'name': 'package-info.java (6.0 [2])',
'size': 6.0,
'color': '#506bda'
}
]
}, {
'name': 'jpa',
'children': [{
'name': 'JpaOwnerRepositoryImpl.java (81.0 [17])',
'size': 81.0,
'color': '#f5c2aa'
}, {
'name': 'JpaVisitRepositoryImpl.java (64.0 [12])',
'size': 64.0,
'color': '#cdd9ec'
}, {
'name': 'JpaVetRepositoryImpl.java (48.0 [11])',
'size': 48.0,
'color': '#c3d5f4'
}, {
'name': 'JpaPetRepositoryImpl.java (63.0 [10])',
'size': 63.0,
'color': '#b6cefa'
}, {
'name': 'package-info.java (6.0 [2])',
'size': 6.0,
'color': '#506bda'
}
]
}
...
Daten für Visualisierung aufbereiten
from matplotlib import cm
from matplotlib.colors import rgb2hex
def create_plot_data(df, color_column_name, size_column_name, seperator):
plot_data = pd.DataFrame(index=df.index)
plot_data['value_for_color'] = df[color_column_name]
plot_data['ratio_for_color'] = plot_data['value_for_color'] / plot_data['value_for_color'].max()
plot_data['color'] = plot_data['ratio_for_color'].apply(lambda x : rgb2hex(cm.coolwarm(x)))
plot_data['size'] = df[size_column_name]
plot_data[['path', 'name']] = df.index.str.rsplit(seperator, n=1).to_list()
plot_data['path_list'] = plot_data['path'].str.split(seperator)
return plot_data
In D3-Datenformat (JSON) umwandeln
import json
def create_flare_json(df):
json_data = {'name': 'flare', 'children': []}
for _, series in df.iterrows():
hierarchical_data = series['path_list']
children = json_data['children']
for part in hierarchical_data:
entry = next((child for child in children if child.get('name', '') == part), None)
if not entry:
entry = {'name': part, 'children': []}
children.append(entry)
children = entry['children']
children.append({
'name': f"{series['name']} ({series['size']} [{series['value_for_color']}])",
'size': series['size'],
'color': series['color']
})
return json_data
Alles anstoßen, HTML-Template mit Daten füttern und Datei erzeugen
from IPython.core.display import HTML
def create_hotspot_file(hotspots, color_column_name, size_column_name, separator):
json_data = create_flare_json(create_plot_data(hotspots, color_column_name, size_column_name,separator))
with open("vis/template_hierarchical_d3_inline.html") as html_template:
html = html_template.read().replace("###FLARE_JSON###", str(json_data))
with open(f'hotspots.html', mode='w') as html_out:
html_out.write(html)
return HTML('<a href="hotspots.html">hotspots.html</a>')
create_hotspot_file(hotspots, "changes", "code", "/")