From e27a7abfd4058ffde24eab1b6fbdbe3254892bf7 Mon Sep 17 00:00:00 2001 From: Amp Date: Tue, 8 Sep 2026 17:16:18 +0000 Subject: [PATCH] fix: run CodeBoarding reviews without a synced baseline Amp-Thread-ID: https://ampcode.com/threads/T-01a08203-82f5-7539-bc7f-7c6512cf51b8 Co-authored-by: Ivan Milev --- .codeboarding/analysis.json | 3433 ----------------------- .codeboarding/fingerprint.json | 104 - .codeboarding/health/health_report.json | 39 - .codeboarding/static_analysis.pkl | Bin 76398 -> 0 bytes .codeboarding/static_analysis.sha | 2 - .github/workflows/codeboarding-sync.yml | 50 - .github/workflows/codeboarding.yml | 14 +- 7 files changed, 6 insertions(+), 3636 deletions(-) delete mode 100644 .codeboarding/analysis.json delete mode 100644 .codeboarding/fingerprint.json delete mode 100644 .codeboarding/health/health_report.json delete mode 100644 .codeboarding/static_analysis.pkl delete mode 100644 .codeboarding/static_analysis.sha delete mode 100644 .github/workflows/codeboarding-sync.yml diff --git a/.codeboarding/analysis.json b/.codeboarding/analysis.json deleted file mode 100644 index ff5656f0ee4..00000000000 --- a/.codeboarding/analysis.json +++ /dev/null @@ -1,3433 +0,0 @@ -{ - "metadata": { - "generated_at": "2026-08-26T23:26:34.363650+00:00", - "source_tree_hash": "9316f399764518312cb0df5edf464632aa04a8ad39beab620c182a3d06417fd9", - "repo_name": ".codeboarding-target", - "depth_level": 2, - "depth_cap": 2, - "file_coverage_summary": { - "total_files": 92, - "analyzed": 30, - "not_analyzed": 62, - "not_analyzed_by_reason": { - "other": 42, - "codeboardingignore": 20 - } - } - }, - "description": "Spring PetClinic is a Spring Boot sample application showcasing standard Spring MVC and Spring Data JPA monolithic architecture patterns for veterinary clinic management. The application lifecycle begins at Application Bootstrap, which configures runtime hints and initializes the Spring application context. When incoming HTTP requests arrive, they are processed through the web layer configured by Web Presentation and Localization, which routes requests to either domain-specific controllers such as Owner and Pet Management (handling pet owner profiles, pet details, and visit schedules) or Veterinarian Management (providing paginated vet listings and specialties). Cross-cutting infrastructure concerns like caching and exception testing are managed by Cache Configuration and Diagnostics to optimize database reads via Spring Cache and verify application error handling workflows.", - "files": { - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.BaseEntity", - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.setId(Integer)", - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()" - ], - "content_hash": "7e376b41ef2726ef", - "module_hash": "c78ab574a1cff53c" - }, - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.NamedEntity", - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.setName(String)", - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.toString()" - ], - "content_hash": "e42b68533562d6df", - "module_hash": "f30d7d9525909572" - }, - "src/main/java/org/springframework/samples/petclinic/model/Person.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.Person", - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.getFirstName()", - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.setFirstName(String)", - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.getLastName()", - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.setLastName(String)" - ], - "content_hash": "0162af9aff8633fa", - "module_hash": "1ecdc9840207e7fb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getAddress()", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.setAddress(String)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getCity()", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.setCity(String)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getTelephone()", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.setTelephone(String)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addVisit(Integer, Visit)" - ], - "content_hash": "057abdc3a925257c", - "module_hash": "fb337a355f4bcab5" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController(OwnerRepository)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.setAllowedFields(WebDataBinder)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initCreationForm()", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processCreationForm(Owner, BindingResult, RedirectAttributes)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initFindForm()", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processFindForm(int, Owner, BindingResult, Model)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.addPaginationModel(int, Model, Page)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findPaginatedForOwnersLastName(int, String)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initUpdateOwnerForm()", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processUpdateOwnerForm(Owner, BindingResult, int, RedirectAttributes)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.showOwner(int)" - ], - "content_hash": "7688e8e84f308d72", - "module_hash": "5825eb3110632cd1" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.OwnerRepository", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findByLastNameStartingWith(String, Pageable)", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findById(Integer)" - ], - "content_hash": "b65eb540ef95a44a", - "module_hash": "2f5ff6ba96e8c64d" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.setBirthDate(LocalDate)", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getType()", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.setType(PetType)", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getVisits()", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.addVisit(Visit)" - ], - "content_hash": "bd1445bd68fb970c", - "module_hash": "5bd3ceb9f61586c5" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController(OwnerRepository, PetTypeRepository)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.populatePetTypes()", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.findOwner(int)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.findPet(int, Integer)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initOwnerBinder(WebDataBinder)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initUpdateForm()", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)" - ], - "content_hash": "71bff34a077485f8", - "module_hash": "68f1d24e4e36d34a" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetType.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/PetType.java|src.main.java.org.springframework.samples.petclinic.owner.PetType.PetType" - ], - "content_hash": "45f7f09669fb2a11", - "module_hash": "a24fa63d53b44e55" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter", - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter(PetTypeRepository)", - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.print(PetType, Locale)", - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.parse(String, Locale)" - ], - "content_hash": "96a8e36901f9f0ae", - "module_hash": "7883613c9a298a8c" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.PetTypeRepository", - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.findPetTypes()" - ], - "content_hash": "63cd9227368ae477", - "module_hash": "573dc96f43c24905" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator", - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.supports(Class)" - ], - "content_hash": "3001ad22cd871f61", - "module_hash": "7ebb966bd0b28bf7" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit", - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit()", - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.getDate()", - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.setDate(LocalDate)", - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.getDescription()", - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.setDescription(String)" - ], - "content_hash": "d9812e1a6a49f962", - "module_hash": "d8fa732bf40e266e" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController(OwnerRepository)", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.setAllowedFields(WebDataBinder)", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.loadPetWithVisit(int, int, Map)", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.minVisitDate()", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.initNewVisitForm()", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.processNewVisitForm(Owner, int, Visit, BindingResult, RedirectAttributes)" - ], - "content_hash": "947de3bd98c0ac75", - "module_hash": "dae426f77a0d2ad6" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java|src.main.java.org.springframework.samples.petclinic.vet.Specialty.Specialty" - ], - "content_hash": "2d520e90d0e574f0", - "module_hash": "40b7ea86857b6748" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.Vet", - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialtiesInternal()", - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialties()", - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.getNrOfSpecialties()", - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.addSpecialty(Specialty)" - ], - "content_hash": "7e305a3841d76c97", - "module_hash": "cb5c8a78e633643e" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController", - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController(VetRepository)", - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.showVetList(int, Model)", - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.addPaginationModel(int, Page, Model)", - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.findPaginated(int)", - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.showResourcesVetList()" - ], - "content_hash": "1f1feebd51b8e5b7", - "module_hash": "509e293b8f8bc3a8" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java|src.main.java.org.springframework.samples.petclinic.vet.VetRepository.VetRepository", - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java|src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll()", - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java|src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll(Pageable)" - ], - "content_hash": "493373d9c53abc2f", - "module_hash": "911fb5f6b692591a" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vets.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/vet/Vets.java|src.main.java.org.springframework.samples.petclinic.vet.Vets.Vets", - "src/main/java/org/springframework/samples/petclinic/vet/Vets.java|src.main.java.org.springframework.samples.petclinic.vet.Vets.getVetList()" - ], - "content_hash": "b134120b44cf0c85", - "module_hash": "62f49ec93f5222d6" - }, - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.WebConfiguration", - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeResolver()", - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeChangeInterceptor()", - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.addInterceptors(InterceptorRegistry)" - ], - "content_hash": "8dcf5bab4bc062ae", - "module_hash": "0924f5a7a14d74e4" - }, - "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java|src.main.java.org.springframework.samples.petclinic.system.WelcomeController.WelcomeController", - "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java|src.main.java.org.springframework.samples.petclinic.system.WelcomeController.welcome()" - ], - "content_hash": "21091ef254ecf158", - "module_hash": "f8a0caae06f006b8" - }, - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.CacheConfiguration", - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.petclinicCacheConfigurationCustomizer()", - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.cacheConfiguration()" - ], - "content_hash": "17fbb60dfda59c26", - "module_hash": "77ab504962168bd4" - }, - "src/main/java/org/springframework/samples/petclinic/system/CrashController.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/system/CrashController.java|src.main.java.org.springframework.samples.petclinic.system.CrashController.CrashController", - "src/main/java/org/springframework/samples/petclinic/system/CrashController.java|src.main.java.org.springframework.samples.petclinic.system.CrashController.triggerException()" - ], - "content_hash": "fc929e5857deca15", - "module_hash": "18c44e470d42dac8" - }, - "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java|src.main.java.org.springframework.samples.petclinic.PetClinicApplication.PetClinicApplication", - "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java|src.main.java.org.springframework.samples.petclinic.PetClinicApplication.main(String[])" - ], - "content_hash": "e4b30b80e5346cb3", - "module_hash": "981eb240dcec6b4c" - }, - "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java": { - "method_keys": [ - "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java|src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.PetClinicRuntimeHints", - "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java|src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.registerHints(RuntimeHints, ClassLoader)" - ], - "content_hash": "4af4c744d9a97bee", - "module_hash": "dc70b91cbcb37e87" - } - }, - "methods_index": { - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.BaseEntity": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.BaseEntity", - "start_line": 33, - "end_line": 51, - "type": "CLASS", - "content_hash": "cbba6f53633efe0d" - }, - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "start_line": 39, - "end_line": 41, - "type": "METHOD", - "content_hash": "47d2a99d73929c12" - }, - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.setId(Integer)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.setId(Integer)", - "start_line": 43, - "end_line": 45, - "type": "METHOD", - "content_hash": "2080a6b9aaa95edd" - }, - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "start_line": 47, - "end_line": 49, - "type": "METHOD", - "content_hash": "124c5b17d9fb29ac" - }, - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.NamedEntity": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.NamedEntity", - "start_line": 31, - "end_line": 51, - "type": "CLASS", - "content_hash": "b97698b9ae6473eb" - }, - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "start_line": 37, - "end_line": 39, - "type": "METHOD", - "content_hash": "642341e4edaacb13" - }, - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.setName(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.setName(String)", - "start_line": 41, - "end_line": 43, - "type": "METHOD", - "content_hash": "9023b3ae37d3c160" - }, - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.toString()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.toString()", - "start_line": 46, - "end_line": 49, - "type": "METHOD", - "content_hash": "16e070796d816af4" - }, - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.Person": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.Person.Person", - "start_line": 29, - "end_line": 57, - "type": "CLASS", - "content_hash": "a5401654838f74c2" - }, - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.getFirstName()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.Person.getFirstName()", - "start_line": 41, - "end_line": 43, - "type": "METHOD", - "content_hash": "49bd2b718c165709" - }, - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.setFirstName(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.Person.setFirstName(String)", - "start_line": 45, - "end_line": 47, - "type": "METHOD", - "content_hash": "9f30c6834a253fb9" - }, - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.getLastName()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.Person.getLastName()", - "start_line": 49, - "end_line": 51, - "type": "METHOD", - "content_hash": "6467cc89274bcacd" - }, - "src/main/java/org/springframework/samples/petclinic/model/Person.java|src.main.java.org.springframework.samples.petclinic.model.Person.setLastName(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.Person.setLastName(String)", - "start_line": 53, - "end_line": 55, - "type": "METHOD", - "content_hash": "32c48b3e4491db25" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner", - "start_line": 49, - "end_line": 185, - "type": "CLASS", - "content_hash": "707e51cda9ce2a8a" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getAddress()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getAddress()", - "start_line": 69, - "end_line": 71, - "type": "METHOD", - "content_hash": "64cfb334465cd6ea" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.setAddress(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.setAddress(String)", - "start_line": 73, - "end_line": 75, - "type": "METHOD", - "content_hash": "326534082666736e" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getCity()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getCity()", - "start_line": 77, - "end_line": 79, - "type": "METHOD", - "content_hash": "2acd010605ab33ce" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.setCity(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.setCity(String)", - "start_line": 81, - "end_line": 83, - "type": "METHOD", - "content_hash": "5c4293c40448c6d3" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getTelephone()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getTelephone()", - "start_line": 85, - "end_line": 87, - "type": "METHOD", - "content_hash": "d5eb854281b40c86" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.setTelephone(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.setTelephone(String)", - "start_line": 89, - "end_line": 91, - "type": "METHOD", - "content_hash": "3d43d5a42ab2e41f" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "start_line": 93, - "end_line": 95, - "type": "METHOD", - "content_hash": "8c1d92b16c50c2ee" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "start_line": 97, - "end_line": 110, - "type": "METHOD", - "content_hash": "4e46fb2e0c738667" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String)", - "start_line": 117, - "end_line": 119, - "type": "METHOD", - "content_hash": "7d11e4b32b1c6101" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "start_line": 126, - "end_line": 136, - "type": "METHOD", - "content_hash": "2d69fa104db6a9c6" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "start_line": 144, - "end_line": 154, - "type": "METHOD", - "content_hash": "7dc9bc83f798e51d" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()", - "start_line": 157, - "end_line": 166, - "type": "METHOD", - "content_hash": "74d5981ad0dbda64" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addVisit(Integer, Visit)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.addVisit(Integer, Visit)", - "start_line": 173, - "end_line": 183, - "type": "METHOD", - "content_hash": "61df071e23e0e1f3" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController", - "start_line": 49, - "end_line": 179, - "type": "CLASS", - "content_hash": "41a097a493f7c161" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController(OwnerRepository)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController(OwnerRepository)", - "start_line": 55, - "end_line": 57, - "type": "CONSTRUCTOR", - "content_hash": "3ba2cd4c339ecb52" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.setAllowedFields(WebDataBinder)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.setAllowedFields(WebDataBinder)", - "start_line": 60, - "end_line": 62, - "type": "METHOD", - "content_hash": "eedfcb21c50f15fb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)", - "start_line": 65, - "end_line": 70, - "type": "METHOD", - "content_hash": "a47c982dcf9c67b4" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initCreationForm()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initCreationForm()", - "start_line": 73, - "end_line": 75, - "type": "METHOD", - "content_hash": "0ddf7c73b1f84fc9" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processCreationForm(Owner, BindingResult, RedirectAttributes)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processCreationForm(Owner, BindingResult, RedirectAttributes)", - "start_line": 78, - "end_line": 87, - "type": "METHOD", - "content_hash": "595e40bd3b2932a9" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initFindForm()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initFindForm()", - "start_line": 90, - "end_line": 92, - "type": "METHOD", - "content_hash": "82aed8eca7a8975e" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processFindForm(int, Owner, BindingResult, Model)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processFindForm(int, Owner, BindingResult, Model)", - "start_line": 95, - "end_line": 122, - "type": "METHOD", - "content_hash": "986f06215ed38116" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.addPaginationModel(int, Model, Page)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.addPaginationModel(int, Model, Page)", - "start_line": 124, - "end_line": 131, - "type": "METHOD", - "content_hash": "9346045be1ea4449" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findPaginatedForOwnersLastName(int, String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findPaginatedForOwnersLastName(int, String)", - "start_line": 133, - "end_line": 137, - "type": "METHOD", - "content_hash": "5d8eaad1383fedeb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initUpdateOwnerForm()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initUpdateOwnerForm()", - "start_line": 140, - "end_line": 142, - "type": "METHOD", - "content_hash": "8a6e2b23af0c8a02" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processUpdateOwnerForm(Owner, BindingResult, int, RedirectAttributes)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processUpdateOwnerForm(Owner, BindingResult, int, RedirectAttributes)", - "start_line": 145, - "end_line": 162, - "type": "METHOD", - "content_hash": "34db7c9ea46901c8" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.showOwner(int)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.showOwner(int)", - "start_line": 170, - "end_line": 177, - "type": "METHOD", - "content_hash": "c4dc6d956da138d6" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.OwnerRepository": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.OwnerRepository", - "start_line": 36, - "end_line": 62, - "type": "INTERFACE", - "content_hash": "33994d1de3537e16" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findByLastNameStartingWith(String, Pageable)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findByLastNameStartingWith(String, Pageable)", - "start_line": 45, - "end_line": 45, - "type": "METHOD", - "content_hash": "879dd9bf77dc2b0a" - }, - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findById(Integer)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findById(Integer)", - "start_line": 60, - "end_line": 60, - "type": "METHOD", - "content_hash": "c841c9f4dea3cb76" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet", - "start_line": 46, - "end_line": 85, - "type": "CLASS", - "content_hash": "5b8d117066f874d9" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.setBirthDate(LocalDate)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.setBirthDate(LocalDate)", - "start_line": 61, - "end_line": 63, - "type": "METHOD", - "content_hash": "009f95f005ae5c6f" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()", - "start_line": 65, - "end_line": 67, - "type": "METHOD", - "content_hash": "7bad5194c9fd194a" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getType()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.getType()", - "start_line": 69, - "end_line": 71, - "type": "METHOD", - "content_hash": "743e197c3dcaad11" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.setType(PetType)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.setType(PetType)", - "start_line": 73, - "end_line": 75, - "type": "METHOD", - "content_hash": "6e707c9f3575e8af" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getVisits()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.getVisits()", - "start_line": 77, - "end_line": 79, - "type": "METHOD", - "content_hash": "9f669b6521fa23eb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.addVisit(Visit)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.addVisit(Visit)", - "start_line": 81, - "end_line": 83, - "type": "METHOD", - "content_hash": "694ac8992e3e19bb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController", - "start_line": 49, - "end_line": 207, - "type": "CLASS", - "content_hash": "8615ba267f656d09" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController(OwnerRepository, PetTypeRepository)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController(OwnerRepository, PetTypeRepository)", - "start_line": 57, - "end_line": 60, - "type": "CONSTRUCTOR", - "content_hash": "9f001413a892e141" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.populatePetTypes()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.populatePetTypes()", - "start_line": 63, - "end_line": 65, - "type": "METHOD", - "content_hash": "cbd732bc9ff00a27" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.findOwner(int)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.findOwner(int)", - "start_line": 68, - "end_line": 73, - "type": "METHOD", - "content_hash": "e70d0b031964ad0b" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.findPet(int, Integer)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.findPet(int, Integer)", - "start_line": 76, - "end_line": 87, - "type": "METHOD", - "content_hash": "6eb30c10ec154682" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initOwnerBinder(WebDataBinder)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.initOwnerBinder(WebDataBinder)", - "start_line": 90, - "end_line": 92, - "type": "METHOD", - "content_hash": "e99c3fbcf3e27954" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)", - "start_line": 95, - "end_line": 98, - "type": "METHOD", - "content_hash": "e72c4243ae8032c8" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "start_line": 101, - "end_line": 105, - "type": "METHOD", - "content_hash": "f8db9dcdc64e3ea0" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "start_line": 108, - "end_line": 137, - "type": "METHOD", - "content_hash": "0c7a43509a165db5" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initUpdateForm()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.initUpdateForm()", - "start_line": 140, - "end_line": 142, - "type": "METHOD", - "content_hash": "b246c06acd9d9201" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "start_line": 145, - "end_line": 179, - "type": "METHOD", - "content_hash": "026cfc89f28235be" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "start_line": 186, - "end_line": 200, - "type": "METHOD", - "content_hash": "0612e7c5cedaf795" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)", - "start_line": 202, - "end_line": 205, - "type": "METHOD", - "content_hash": "8679ad525ac2a95e" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetType.java|src.main.java.org.springframework.samples.petclinic.owner.PetType.PetType": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetType.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetType.PetType", - "start_line": 28, - "end_line": 30, - "type": "CLASS", - "content_hash": "5678b1c036acbe07" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter", - "start_line": 37, - "end_line": 62, - "type": "CLASS", - "content_hash": "6451de1c4649be91" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter(PetTypeRepository)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter(PetTypeRepository)", - "start_line": 41, - "end_line": 43, - "type": "CONSTRUCTOR", - "content_hash": "3c8b8e405261a2bf" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.print(PetType, Locale)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.print(PetType, Locale)", - "start_line": 46, - "end_line": 49, - "type": "METHOD", - "content_hash": "c5e12f75a3f5a64d" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.parse(String, Locale)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.parse(String, Locale)", - "start_line": 52, - "end_line": 60, - "type": "METHOD", - "content_hash": "9645434bdd80ddb9" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.PetTypeRepository": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.PetTypeRepository", - "start_line": 30, - "end_line": 39, - "type": "INTERFACE", - "content_hash": "65a7d1baa5210513" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java|src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.findPetTypes()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.findPetTypes()", - "start_line": 37, - "end_line": 37, - "type": "METHOD", - "content_hash": "19838dab129fae07" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator", - "start_line": 32, - "end_line": 69, - "type": "CLASS", - "content_hash": "df846fc975110a58" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "start_line": 39, - "end_line": 59, - "type": "METHOD", - "content_hash": "2a8f22042907c4ba" - }, - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.supports(Class)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.supports(Class)", - "start_line": 65, - "end_line": 67, - "type": "METHOD", - "content_hash": "7d407318a609ba4d" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit", - "start_line": 36, - "end_line": 68, - "type": "CLASS", - "content_hash": "37ccf3448612203b" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit()", - "start_line": 48, - "end_line": 50, - "type": "CONSTRUCTOR", - "content_hash": "684564834620db16" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.getDate()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Visit.getDate()", - "start_line": 52, - "end_line": 54, - "type": "METHOD", - "content_hash": "a09cfcc8040cc2e7" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.setDate(LocalDate)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Visit.setDate(LocalDate)", - "start_line": 56, - "end_line": 58, - "type": "METHOD", - "content_hash": "8b8fa2995d6e9ccf" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.getDescription()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Visit.getDescription()", - "start_line": 60, - "end_line": 62, - "type": "METHOD", - "content_hash": "5b00d5bfa27c189f" - }, - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java|src.main.java.org.springframework.samples.petclinic.owner.Visit.setDescription(String)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Visit.setDescription(String)", - "start_line": 64, - "end_line": 66, - "type": "METHOD", - "content_hash": "c692c57010cbffd1" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController", - "start_line": 43, - "end_line": 114, - "type": "CLASS", - "content_hash": "0523dbcaadd238b5" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController(OwnerRepository)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController(OwnerRepository)", - "start_line": 47, - "end_line": 49, - "type": "CONSTRUCTOR", - "content_hash": "9cc938e8066979bb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.setAllowedFields(WebDataBinder)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.setAllowedFields(WebDataBinder)", - "start_line": 52, - "end_line": 54, - "type": "METHOD", - "content_hash": "eedfcb21c50f15fb" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.loadPetWithVisit(int, int, Map)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.loadPetWithVisit(int, int, Map)", - "start_line": 64, - "end_line": 81, - "type": "METHOD", - "content_hash": "3036c4b402ea6fd2" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.minVisitDate()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.minVisitDate()", - "start_line": 84, - "end_line": 86, - "type": "METHOD", - "content_hash": "d6baf864c7b8895a" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.initNewVisitForm()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.initNewVisitForm()", - "start_line": 91, - "end_line": 93, - "type": "METHOD", - "content_hash": "d11497ad71fbcef6" - }, - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java|src.main.java.org.springframework.samples.petclinic.owner.VisitController.processNewVisitForm(Owner, int, Visit, BindingResult, RedirectAttributes)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.processNewVisitForm(Owner, int, Visit, BindingResult, RedirectAttributes)", - "start_line": 98, - "end_line": 112, - "type": "METHOD", - "content_hash": "6024aa41a383bceb" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java|src.main.java.org.springframework.samples.petclinic.vet.Specialty.Specialty": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Specialty.Specialty", - "start_line": 30, - "end_line": 32, - "type": "CLASS", - "content_hash": "a65c3f2192b88795" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.Vet": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.Vet", - "start_line": 45, - "end_line": 74, - "type": "CLASS", - "content_hash": "7cb91ffa8c75c121" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialtiesInternal()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialtiesInternal()", - "start_line": 52, - "end_line": 57, - "type": "METHOD", - "content_hash": "be31aea61a0b52b2" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialties()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialties()", - "start_line": 60, - "end_line": 64, - "type": "METHOD", - "content_hash": "e311a3ee26d746a1" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.getNrOfSpecialties()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.getNrOfSpecialties()", - "start_line": 66, - "end_line": 68, - "type": "METHOD", - "content_hash": "b00468aeb0bbbbb1" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java|src.main.java.org.springframework.samples.petclinic.vet.Vet.addSpecialty(Specialty)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.addSpecialty(Specialty)", - "start_line": 70, - "end_line": 72, - "type": "METHOD", - "content_hash": "0529901a0de53043" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController", - "start_line": 36, - "end_line": 74, - "type": "CLASS", - "content_hash": "552564adb3b9887a" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController(VetRepository)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController(VetRepository)", - "start_line": 40, - "end_line": 42, - "type": "CONSTRUCTOR", - "content_hash": "ef8bd5ff1c1bc018" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.showVetList(int, Model)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.showVetList(int, Model)", - "start_line": 45, - "end_line": 48, - "type": "METHOD", - "content_hash": "043a7926ca70ef32" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.addPaginationModel(int, Page, Model)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.addPaginationModel(int, Page, Model)", - "start_line": 50, - "end_line": 57, - "type": "METHOD", - "content_hash": "6c06389bd322cae7" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.findPaginated(int)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.findPaginated(int)", - "start_line": 59, - "end_line": 63, - "type": "METHOD", - "content_hash": "4f18a5b6a16fee0b" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java|src.main.java.org.springframework.samples.petclinic.vet.VetController.showResourcesVetList()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.showResourcesVetList()", - "start_line": 66, - "end_line": 72, - "type": "METHOD", - "content_hash": "8f1be6390c3d29a2" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java|src.main.java.org.springframework.samples.petclinic.vet.VetRepository.VetRepository": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.VetRepository", - "start_line": 38, - "end_line": 58, - "type": "INTERFACE", - "content_hash": "a707b20564c01061" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java|src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll()", - "start_line": 46, - "end_line": 46, - "type": "METHOD", - "content_hash": "57059e1523ab310b" - }, - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java|src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll(Pageable)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll(Pageable)", - "start_line": 56, - "end_line": 56, - "type": "METHOD", - "content_hash": "d4174778908828c1" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vets.java|src.main.java.org.springframework.samples.petclinic.vet.Vets.Vets": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vets.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vets.Vets", - "start_line": 31, - "end_line": 43, - "type": "CLASS", - "content_hash": "7ffce42b3f298e54" - }, - "src/main/java/org/springframework/samples/petclinic/vet/Vets.java|src.main.java.org.springframework.samples.petclinic.vet.Vets.getVetList()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vets.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vets.getVetList()", - "start_line": 36, - "end_line": 41, - "type": "METHOD", - "content_hash": "0ac7c0aef871cc49" - }, - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.WebConfiguration": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.WebConfiguration", - "start_line": 25, - "end_line": 60, - "type": "CLASS", - "content_hash": "8e4827a507615ec2" - }, - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeResolver()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeResolver()", - "start_line": 33, - "end_line": 37, - "type": "METHOD", - "content_hash": "93f498c7bd847b34" - }, - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeChangeInterceptor()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeChangeInterceptor()", - "start_line": 45, - "end_line": 49, - "type": "METHOD", - "content_hash": "ed17fb87cf46beb4" - }, - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.addInterceptors(InterceptorRegistry)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.addInterceptors(InterceptorRegistry)", - "start_line": 56, - "end_line": 58, - "type": "METHOD", - "content_hash": "9ae430fc1bf8f723" - }, - "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java|src.main.java.org.springframework.samples.petclinic.system.WelcomeController.WelcomeController": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WelcomeController.WelcomeController", - "start_line": 23, - "end_line": 30, - "type": "CLASS", - "content_hash": "fa3ee66e771a2c0a" - }, - "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java|src.main.java.org.springframework.samples.petclinic.system.WelcomeController.welcome()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WelcomeController.welcome()", - "start_line": 26, - "end_line": 28, - "type": "METHOD", - "content_hash": "f3b2d7be09d28dcc" - }, - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.CacheConfiguration": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.CacheConfiguration", - "start_line": 33, - "end_line": 53, - "type": "CLASS", - "content_hash": "17fea8461cb3f22a" - }, - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.petclinicCacheConfigurationCustomizer()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.petclinicCacheConfigurationCustomizer()", - "start_line": 36, - "end_line": 38, - "type": "METHOD", - "content_hash": "9969be327833e9bf" - }, - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java|src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.cacheConfiguration()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.cacheConfiguration()", - "start_line": 49, - "end_line": 51, - "type": "METHOD", - "content_hash": "c9c62c299aca7225" - }, - "src/main/java/org/springframework/samples/petclinic/system/CrashController.java|src.main.java.org.springframework.samples.petclinic.system.CrashController.CrashController": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CrashController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CrashController.CrashController", - "start_line": 29, - "end_line": 37, - "type": "CLASS", - "content_hash": "9b6d08b04a2fd6b2" - }, - "src/main/java/org/springframework/samples/petclinic/system/CrashController.java|src.main.java.org.springframework.samples.petclinic.system.CrashController.triggerException()": { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CrashController.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CrashController.triggerException()", - "start_line": 32, - "end_line": 35, - "type": "METHOD", - "content_hash": "de0168674d24f8b9" - }, - "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java|src.main.java.org.springframework.samples.petclinic.PetClinicApplication.PetClinicApplication": { - "file_path": "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.PetClinicApplication.PetClinicApplication", - "start_line": 30, - "end_line": 36, - "type": "CLASS", - "content_hash": "d97221aa25c8f3ad" - }, - "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java|src.main.java.org.springframework.samples.petclinic.PetClinicApplication.main(String[])": { - "file_path": "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.PetClinicApplication.main(String[])", - "start_line": 32, - "end_line": 34, - "type": "METHOD", - "content_hash": "e80b59aaf96a709a" - }, - "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java|src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.PetClinicRuntimeHints": { - "file_path": "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.PetClinicRuntimeHints", - "start_line": 25, - "end_line": 38, - "type": "CLASS", - "content_hash": "6c3cb7a1b261ceb9" - }, - "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java|src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.registerHints(RuntimeHints, ClassLoader)": { - "file_path": "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java", - "qualified_name": "src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.registerHints(RuntimeHints, ClassLoader)", - "start_line": 28, - "end_line": 36, - "type": "METHOD", - "content_hash": "f9385c3ebc4e6851" - } - }, - "components": [ - { - "name": "Owner and Pet Management", - "description": "Manages core veterinary clinic business workflows and domain entities for pet owners, registered pets, and clinic visits, including validation and persistence.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "reference_start_line": 49, - "reference_end_line": 179 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.OwnerRepository", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "reference_start_line": 36, - "reference_end_line": 62 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 49, - "reference_end_line": 207 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "reference_start_line": 43, - "reference_end_line": 114 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.BaseEntity", - "reference_file": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "reference_start_line": 33, - "reference_end_line": 51 - } - ], - "source_cluster_ids": [ - "1", - "2", - "3" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.BaseEntity", - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.setId(Integer)", - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.NamedEntity", - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.setName(String)", - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.toString()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.Person.Person", - "src.main.java.org.springframework.samples.petclinic.model.Person.getFirstName()", - "src.main.java.org.springframework.samples.petclinic.model.Person.setFirstName(String)", - "src.main.java.org.springframework.samples.petclinic.model.Person.getLastName()", - "src.main.java.org.springframework.samples.petclinic.model.Person.setLastName(String)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getAddress()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.setAddress(String)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getCity()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.setCity(String)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getTelephone()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.setTelephone(String)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.addVisit(Integer, Visit)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController(OwnerRepository)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.setAllowedFields(WebDataBinder)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initCreationForm()", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processCreationForm(Owner, BindingResult, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initFindForm()", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processFindForm(int, Owner, BindingResult, Model)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.addPaginationModel(int, Model, Page)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findPaginatedForOwnersLastName(int, String)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initUpdateOwnerForm()", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processUpdateOwnerForm(Owner, BindingResult, int, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.showOwner(int)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.OwnerRepository", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findByLastNameStartingWith(String, Pageable)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findById(Integer)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.setBirthDate(LocalDate)", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.getType()", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.setType(PetType)", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.getVisits()", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.addVisit(Visit)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController(OwnerRepository, PetTypeRepository)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.populatePetTypes()", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.findOwner(int)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.findPet(int, Integer)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initOwnerBinder(WebDataBinder)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initUpdateForm()", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetType.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetType.PetType" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter(PetTypeRepository)", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.print(PetType, Locale)", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.parse(String, Locale)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.PetTypeRepository", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.findPetTypes()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator", - "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.supports(Class)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit()", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.getDate()", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.setDate(LocalDate)", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.getDescription()", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.setDescription(String)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController(OwnerRepository)", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.setAllowedFields(WebDataBinder)", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.loadPetWithVisit(int, int, Map)", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.minVisitDate()", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.initNewVisitForm()", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.processNewVisitForm(Owner, int, Visit, BindingResult, RedirectAttributes)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.Specialty.Specialty" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.Vet.Vet", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialtiesInternal()", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialties()", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.getNrOfSpecialties()", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.addSpecialty(Specialty)" - ] - } - ], - "component_id": "1", - "can_expand": true, - "components": [ - { - "name": "Visit Management and Entity Traversal", - "description": "Handles visit registration, linking clinical visit records to specific pets, and provides lookup/traversal mechanisms across owners, pets, and visits.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.addVisit(Integer, Visit)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "reference_start_line": 173, - "reference_end_line": 183 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.addVisit(Visit)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "reference_start_line": 81, - "reference_end_line": 83 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.showOwner(int)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "reference_start_line": 170, - "reference_end_line": 177 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.findPet(int, Integer)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 76, - "reference_end_line": 87 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findById(Integer)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "reference_start_line": 60, - "reference_end_line": 60 - } - ], - "source_cluster_ids": [ - "1.2", - "1.3", - "1.14", - "1.17", - "1.28", - "1.37", - "1.41", - "1.45", - "1.46", - "1.62", - "1.63", - "1.64", - "1.69", - "1.70", - "1.71" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.addVisit(Integer, Visit)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.showOwner(int)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.OwnerRepository", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findById(Integer)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.getVisits()", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.addVisit(Visit)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetController.findOwner(int)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.findPet(int, Integer)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetType.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetType.PetType" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.Visit()", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.getDate()", - "src.main.java.org.springframework.samples.petclinic.owner.Visit.getDescription()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.loadPetWithVisit(int, int, Map)", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.minVisitDate()", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.processNewVisitForm(Owner, int, Visit, BindingResult, RedirectAttributes)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.Specialty.Specialty" - ] - } - ], - "component_id": "1.1", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Owner Lifecycle and Search Management", - "description": "Manages owner discovery, pagination of search results by last name, and processing form submissions for creating and updating owner profiles.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processCreationForm(Owner, BindingResult, RedirectAttributes)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "reference_start_line": 78, - "reference_end_line": 87 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findPaginatedForOwnersLastName(int, String)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "reference_start_line": 133, - "reference_end_line": 137 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initUpdateOwnerForm()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "reference_start_line": 140, - "reference_end_line": 142 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "reference_start_line": 39, - "reference_end_line": 41 - } - ], - "source_cluster_ids": [ - "1.1", - "1.6", - "1.9", - "1.10", - "1.25", - "1.27", - "1.29", - "1.32", - "1.33", - "1.34", - "1.35", - "1.38", - "1.49", - "1.65", - "1.72" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.BaseEntity", - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.setId(Integer)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.Person.Person", - "src.main.java.org.springframework.samples.petclinic.model.Person.getFirstName()", - "src.main.java.org.springframework.samples.petclinic.model.Person.getLastName()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processCreationForm(Owner, BindingResult, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processFindForm(int, Owner, BindingResult, Model)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.addPaginationModel(int, Model, Page)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findPaginatedForOwnersLastName(int, String)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initUpdateOwnerForm()", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.processUpdateOwnerForm(Owner, BindingResult, int, RedirectAttributes)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerRepository.findByLastNameStartingWith(String, Pageable)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Visit.setDate(LocalDate)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.setAllowedFields(WebDataBinder)" - ] - } - ], - "component_id": "1.2", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Owner-Pet Composition and Form Binding", - "description": "Coordinates the composition of pets within owner entities, sets web binder security allowances, and handles view model initialization for pet creation and editing.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "reference_start_line": 97, - "reference_end_line": 110 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "reference_start_line": 93, - "reference_end_line": 95 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 101, - "reference_end_line": 105 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.initUpdateForm()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 140, - "reference_end_line": 142 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "reference_start_line": 47, - "reference_end_line": 49 - } - ], - "source_cluster_ids": [ - "1.5", - "1.13", - "1.15", - "1.18", - "1.19", - "1.20", - "1.22", - "1.26", - "1.36", - "1.47", - "1.50", - "1.51", - "1.53", - "1.66" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getAddress()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.setAddress(String)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String)", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.OwnerController(OwnerRepository)", - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.setAllowedFields(WebDataBinder)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initUpdateForm()", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Visit.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Visit.setDescription(String)" - ] - } - ], - "component_id": "1.3", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Pet Details and Mutation Processing", - "description": "Controls pet attribute modification workflows, birth date and pet type association, and validation rules during pet creation and update processing.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 145, - "reference_end_line": 179 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 186, - "reference_end_line": 200 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.setType(PetType)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "reference_start_line": 73, - "reference_end_line": 75 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.Pet.setBirthDate(LocalDate)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "reference_start_line": 61, - "reference_end_line": 63 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.setName(String)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "reference_start_line": 41, - "reference_end_line": 43 - } - ], - "source_cluster_ids": [ - "1.7", - "1.16", - "1.23", - "1.30", - "1.39", - "1.40", - "1.42", - "1.43", - "1.44", - "1.54", - "1.55", - "1.56", - "1.61", - "1.67" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.setName(String)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getCity()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.setCity(String)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initCreationForm()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Pet.setBirthDate(LocalDate)", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.getType()", - "src.main.java.org.springframework.samples.petclinic.owner.Pet.setType(PetType)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.PetController(OwnerRepository, PetTypeRepository)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.PetTypeFormatter(PetTypeRepository)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController", - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.VisitController(OwnerRepository)" - ] - } - ], - "component_id": "1.4", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Pet Type Formatting and Metadata Services", - "description": "Provides conversion and formatting facilities for pet types between UI text representations and domain models, along with reference data population for web views.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.parse(String, Locale)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "reference_start_line": 52, - "reference_end_line": 60 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.print(PetType, Locale)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "reference_start_line": 46, - "reference_end_line": 49 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.PetController.populatePetTypes()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "reference_start_line": 63, - "reference_end_line": 65 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initFindForm()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "reference_start_line": 90, - "reference_end_line": 92 - } - ], - "source_cluster_ids": [ - "1.4", - "1.8", - "1.11", - "1.12", - "1.21", - "1.24", - "1.31", - "1.48", - "1.52", - "1.57", - "1.58", - "1.59", - "1.60", - "1.68" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.NamedEntity", - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "src.main.java.org.springframework.samples.petclinic.model.NamedEntity.toString()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/model/Person.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.model.Person.setFirstName(String)", - "src.main.java.org.springframework.samples.petclinic.model.Person.setLastName(String)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.Owner.getTelephone()", - "src.main.java.org.springframework.samples.petclinic.owner.Owner.setTelephone(String)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.OwnerController.initFindForm()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetController.populatePetTypes()", - "src.main.java.org.springframework.samples.petclinic.owner.PetController.initOwnerBinder(WebDataBinder)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.print(PetType, Locale)", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeFormatter.parse(String, Locale)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.PetTypeRepository", - "src.main.java.org.springframework.samples.petclinic.owner.PetTypeRepository.findPetTypes()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator", - "src.main.java.org.springframework.samples.petclinic.owner.PetValidator.supports(Class)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.owner.VisitController.initNewVisitForm()" - ] - } - ], - "component_id": "1.5", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Veterinarian Specialties Domain", - "description": "Models veterinary medical practitioners and their clinical specialty associations within the domain layer.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.addSpecialty(Specialty)", - "reference_file": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "reference_start_line": 70, - "reference_end_line": 72 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialties()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "reference_start_line": 60, - "reference_end_line": 64 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vet.getNrOfSpecialties()", - "reference_file": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "reference_start_line": 66, - "reference_end_line": 68 - } - ], - "source_cluster_ids": [ - "1.73", - "1.74", - "1.75", - "1.76" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vet.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.Vet.Vet", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialtiesInternal()", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.getSpecialties()", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.getNrOfSpecialties()", - "src.main.java.org.springframework.samples.petclinic.vet.Vet.addSpecialty(Specialty)" - ] - } - ], - "component_id": "1.6", - "can_expand": false, - "components": [], - "components_relations": [] - } - ], - "components_relations": [ - { - "relation": "Traverses pet collections within owner aggregates", - "src_name": "Visit Management and Entity Traversal", - "dst_name": "Owner-Pet Composition and Form Binding", - "evidence": "Entity traversal methods navigate owner-pet aggregate structures using Owner.getPets() and Pet instances to associate visits and locate pets for viewing.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 128, - "column": 13 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "call_sites": [ - { - "line": 127, - "column": 18 - } - ], - "description": "" - } - ], - "src_id": "1.1", - "dst_id": "1.3", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 128, - "column": 13 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "call_sites": [ - { - "line": 127, - "column": 18 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner", - "call_sites": [ - { - "line": 66, - "column": 32 - } - ], - "description": "" - } - ] - }, - { - "relation": "Resolves owner identities during view hydration", - "src_name": "Visit Management and Entity Traversal", - "dst_name": "Owner Lifecycle and Search Management", - "evidence": "Owner presentation and entity lookup mechanisms traverse aggregate roots using BaseEntity.getId() to coordinate navigation and view state.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 129, - "column": 26 - } - ], - "description": "" - } - ], - "src_id": "1.1", - "dst_id": "1.2", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 129, - "column": 26 - } - ], - "description": "" - } - ] - }, - { - "relation": "Mutates and associates pet instances within owner models", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Owner-Pet Composition and Form Binding", - "evidence": "Pet form submission handlers invoke Owner.addPet() and Owner.getPet() to link pet entities and verify uniqueness against existing pets in the owner aggregate.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "call_sites": [ - { - "line": 152, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "call_sites": [ - { - "line": 197, - "column": 10 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 51, - "column": 11 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.3", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "call_sites": [ - { - "line": 152, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)", - "call_sites": [ - { - "line": 171, - "column": 9 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "call_sites": [ - { - "line": 197, - "column": 10 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 51, - "column": 11 - } - ], - "description": "" - } - ] - }, - { - "relation": "Queries target pet entities for attribute modification", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Visit Management and Entity Traversal", - "evidence": "Pet update workflows look up target pet records by ID from the owner aggregate before applying modified form attributes.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "call_sites": [ - { - "line": 189, - "column": 27 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.1", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "call_sites": [ - { - "line": 189, - "column": 27 - } - ], - "description": "" - } - ] - }, - { - "relation": "Directs post-mutation redirects to owner profile routes", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Owner Lifecycle and Search Management", - "evidence": "Following successful pet creation or update processing, the controller extracts Owner.getId() to construct redirect URLs to the owner details view.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 153, - "column": 59 - }, - { - "line": 153, - "column": 72 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 187, - "column": 20 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.2", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 153, - "column": 59 - }, - { - "line": 153, - "column": 72 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 187, - "column": 20 - } - ], - "description": "" - } - ] - }, - { - "relation": "Validates and parses pet type names during form execution", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Pet Type Formatting and Metadata Services", - "evidence": "Pet validation routines and update handlers evaluate pet type references and pet names populated via the formatting and type metadata services.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 192, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 41, - "column": 21 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.5", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 148, - "column": 24 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 192, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 41, - "column": 21 - } - ], - "description": "" - } - ] - }, - { - "relation": "Accesses entity naming metadata for duplicate verification", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Pet Type Formatting and Metadata Services", - "evidence": "Composition logic and pet lookup operations inspect NamedEntity.getName() to compare pet names within the owner's pet collection.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 146, - "column": 26 - } - ], - "description": "" - } - ], - "src_id": "1.3", - "dst_id": "1.5", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 146, - "column": 26 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 111, - "column": 31 - }, - { - "line": 111, - "column": 77 - } - ], - "description": "" - } - ] - }, - { - "relation": "Coordinates parent entity identity assignment", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Owner Lifecycle and Search Management", - "evidence": "During pet addition to an owner, the composition layer references BaseEntity.getId() to verify persistence status and maintain aggregate integrity.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 105, - "column": 75 - }, - { - "line": 105, - "column": 88 - } - ], - "description": "" - } - ], - "src_id": "1.3", - "dst_id": "1.2", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 105, - "column": 75 - }, - { - "line": 105, - "column": 88 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner Lifecycle and Search Management", - "dst_name": "Owner-Pet Composition and Form Binding", - "evidence": "", - "key_edges": [], - "src_id": "1.2", - "dst_id": "1.3", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 159, - "column": 24 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner Lifecycle and Search Management", - "dst_name": "Pet Type Formatting and Metadata Services", - "evidence": "", - "key_edges": [], - "src_id": "1.2", - "dst_id": "1.5", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator", - "call_sites": [ - { - "line": 96, - "column": 31 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Visit Management and Entity Traversal", - "evidence": "", - "key_edges": [], - "src_id": "1.3", - "dst_id": "1.1", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet", - "call_sites": [ - { - "line": 102, - "column": 17 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Pet Details and Mutation Processing", - "evidence": "", - "key_edges": [], - "src_id": "1.3", - "dst_id": "1.4", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()", - "call_sites": [ - { - "line": 116, - "column": 11 - }, - { - "line": 116, - "column": 41 - } - ], - "description": "" - } - ] - } - ] - }, - { - "name": "Veterinarian Management", - "description": "Exposes clinic veterinarian rosters, specialties, and paginated web and REST/XML resources backed by cached database queries.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController", - "reference_file": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "reference_start_line": 36, - "reference_end_line": 74 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.VetRepository", - "reference_file": "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java", - "reference_start_line": 38, - "reference_end_line": 58 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.vet.Vets.Vets", - "reference_file": "src/main/java/org/springframework/samples/petclinic/vet/Vets.java", - "reference_start_line": 31, - "reference_end_line": 43 - } - ], - "source_cluster_ids": [ - "4" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController", - "src.main.java.org.springframework.samples.petclinic.vet.VetController.VetController(VetRepository)", - "src.main.java.org.springframework.samples.petclinic.vet.VetController.showVetList(int, Model)", - "src.main.java.org.springframework.samples.petclinic.vet.VetController.addPaginationModel(int, Page, Model)", - "src.main.java.org.springframework.samples.petclinic.vet.VetController.findPaginated(int)", - "src.main.java.org.springframework.samples.petclinic.vet.VetController.showResourcesVetList()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.VetRepository", - "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll()", - "src.main.java.org.springframework.samples.petclinic.vet.VetRepository.findAll(Pageable)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/vet/Vets.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.vet.Vets.Vets", - "src.main.java.org.springframework.samples.petclinic.vet.Vets.getVetList()" - ] - } - ], - "component_id": "2", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Web Presentation and Localization", - "description": "Configures Spring MVC web routing, locale resolution, and interceptors while serving the default landing page of the clinic application.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.WebConfiguration", - "reference_file": "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java", - "reference_start_line": 25, - "reference_end_line": 60 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.WelcomeController.WelcomeController", - "reference_file": "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java", - "reference_start_line": 23, - "reference_end_line": 30 - } - ], - "source_cluster_ids": [ - "5", - "10" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.WebConfiguration", - "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeResolver()", - "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.localeChangeInterceptor()", - "src.main.java.org.springframework.samples.petclinic.system.WebConfiguration.addInterceptors(InterceptorRegistry)" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.system.WelcomeController.WelcomeController", - "src.main.java.org.springframework.samples.petclinic.system.WelcomeController.welcome()" - ] - } - ], - "component_id": "3", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Cache Configuration and Diagnostics", - "description": "Configures JCache/Caffeine caching customizations for performance optimization and provides diagnostic endpoints to test exception handling.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.CacheConfiguration", - "reference_file": "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java", - "reference_start_line": 33, - "reference_end_line": 53 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.system.CrashController.CrashController", - "reference_file": "src/main/java/org/springframework/samples/petclinic/system/CrashController.java", - "reference_start_line": 29, - "reference_end_line": 37 - } - ], - "source_cluster_ids": [ - "6", - "9" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.CacheConfiguration", - "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.petclinicCacheConfigurationCustomizer()", - "src.main.java.org.springframework.samples.petclinic.system.CacheConfiguration.cacheConfiguration()" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/system/CrashController.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.system.CrashController.CrashController", - "src.main.java.org.springframework.samples.petclinic.system.CrashController.triggerException()" - ] - } - ], - "component_id": "4", - "can_expand": false, - "components": [], - "components_relations": [] - }, - { - "name": "Application Bootstrap", - "description": "Initializes the Spring Boot application runtime and registers AOT native image hints for resource and reflection support.", - "key_entities": [ - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.PetClinicApplication.PetClinicApplication", - "reference_file": "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java", - "reference_start_line": 30, - "reference_end_line": 36 - }, - { - "qualified_name": "src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.PetClinicRuntimeHints", - "reference_file": "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java", - "reference_start_line": 25, - "reference_end_line": 38 - } - ], - "source_cluster_ids": [ - "7", - "8" - ], - "file_methods": [ - { - "file_path": "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.PetClinicApplication.PetClinicApplication", - "src.main.java.org.springframework.samples.petclinic.PetClinicApplication.main(String[])" - ] - }, - { - "file_path": "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java", - "methods": [ - "src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.PetClinicRuntimeHints", - "src.main.java.org.springframework.samples.petclinic.PetClinicRuntimeHints.registerHints(RuntimeHints, ClassLoader)" - ] - } - ], - "component_id": "5", - "can_expand": false, - "components": [], - "components_relations": [] - } - ], - "components_relations": [ - { - "relation": "Resolves owner identities during view hydration", - "src_name": "Visit Management and Entity Traversal", - "dst_name": "Owner Lifecycle and Search Management", - "evidence": "Owner presentation and entity lookup mechanisms traverse aggregate roots using BaseEntity.getId() to coordinate navigation and view state.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 129, - "column": 26 - } - ], - "description": "" - } - ], - "src_id": "1.1", - "dst_id": "1.2", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 129, - "column": 26 - } - ], - "description": "" - } - ] - }, - { - "relation": "Traverses pet collections within owner aggregates", - "src_name": "Visit Management and Entity Traversal", - "dst_name": "Owner-Pet Composition and Form Binding", - "evidence": "Entity traversal methods navigate owner-pet aggregate structures using Owner.getPets() and Pet instances to associate visits and locate pets for viewing.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 128, - "column": 13 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "call_sites": [ - { - "line": 127, - "column": 18 - } - ], - "description": "" - } - ], - "src_id": "1.1", - "dst_id": "1.3", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 128, - "column": 13 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPets()", - "call_sites": [ - { - "line": 127, - "column": 18 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java|src.main.java.org.springframework.samples.petclinic.owner.OwnerController.findOwner(Integer)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.Owner", - "call_sites": [ - { - "line": 66, - "column": 32 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner Lifecycle and Search Management", - "dst_name": "Owner-Pet Composition and Form Binding", - "evidence": "", - "key_edges": [], - "src_id": "1.2", - "dst_id": "1.3", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.toString()", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 159, - "column": 24 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner Lifecycle and Search Management", - "dst_name": "Pet Type Formatting and Metadata Services", - "evidence": "", - "key_edges": [], - "src_id": "1.2", - "dst_id": "1.5", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initPetBinder(WebDataBinder)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.PetValidator", - "call_sites": [ - { - "line": 96, - "column": 31 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Visit Management and Entity Traversal", - "evidence": "", - "key_edges": [], - "src_id": "1.3", - "dst_id": "1.1", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.initCreationForm(Owner, ModelMap)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.Pet", - "call_sites": [ - { - "line": 102, - "column": 17 - } - ], - "description": "" - } - ] - }, - { - "relation": "Coordinates parent entity identity assignment", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Owner Lifecycle and Search Management", - "evidence": "During pet addition to an owner, the composition layer references BaseEntity.getId() to verify persistence status and maintain aggregate integrity.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 105, - "column": 75 - }, - { - "line": 105, - "column": 88 - } - ], - "description": "" - } - ], - "src_id": "1.3", - "dst_id": "1.2", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 105, - "column": 75 - }, - { - "line": 105, - "column": 88 - } - ], - "description": "" - } - ] - }, - { - "relation": "calls", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Pet Details and Mutation Processing", - "evidence": "", - "key_edges": [], - "src_id": "1.3", - "dst_id": "1.4", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Pet.java|src.main.java.org.springframework.samples.petclinic.owner.Pet.getBirthDate()", - "call_sites": [ - { - "line": 116, - "column": 11 - }, - { - "line": 116, - "column": 41 - } - ], - "description": "" - } - ] - }, - { - "relation": "Accesses entity naming metadata for duplicate verification", - "src_name": "Owner-Pet Composition and Form Binding", - "dst_name": "Pet Type Formatting and Metadata Services", - "evidence": "Composition logic and pet lookup operations inspect NamedEntity.getName() to compare pet names within the owner's pet collection.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 146, - "column": 26 - } - ], - "description": "" - } - ], - "src_id": "1.3", - "dst_id": "1.5", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 146, - "column": 26 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processCreationForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 111, - "column": 31 - }, - { - "line": 111, - "column": 77 - } - ], - "description": "" - } - ] - }, - { - "relation": "Queries target pet entities for attribute modification", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Visit Management and Entity Traversal", - "evidence": "Pet update workflows look up target pet records by ID from the owner aggregate before applying modified form attributes.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "call_sites": [ - { - "line": 189, - "column": 27 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.1", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(Integer)", - "call_sites": [ - { - "line": 189, - "column": 27 - } - ], - "description": "" - } - ] - }, - { - "relation": "Directs post-mutation redirects to owner profile routes", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Owner Lifecycle and Search Management", - "evidence": "Following successful pet creation or update processing, the controller extracts Owner.getId() to construct redirect URLs to the owner details view.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 153, - "column": 59 - }, - { - "line": 153, - "column": 72 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 187, - "column": 20 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.2", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 153, - "column": 59 - }, - { - "line": 153, - "column": 72 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.getId()", - "call_sites": [ - { - "line": 187, - "column": 20 - } - ], - "description": "" - } - ] - }, - { - "relation": "Mutates and associates pet instances within owner models", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Owner-Pet Composition and Form Binding", - "evidence": "Pet form submission handlers invoke Owner.addPet() and Owner.getPet() to link pet entities and verify uniqueness against existing pets in the owner aggregate.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "call_sites": [ - { - "line": 152, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "call_sites": [ - { - "line": 197, - "column": 10 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 51, - "column": 11 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.3", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.getPet(String, boolean)", - "call_sites": [ - { - "line": 152, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.isDuplicatePetNameViolation(DataIntegrityViolationException)", - "call_sites": [ - { - "line": 171, - "column": 9 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/owner/Owner.java|src.main.java.org.springframework.samples.petclinic.owner.Owner.addPet(Pet)", - "call_sites": [ - { - "line": 197, - "column": 10 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java|src.main.java.org.springframework.samples.petclinic.model.BaseEntity.isNew()", - "call_sites": [ - { - "line": 51, - "column": 11 - } - ], - "description": "" - } - ] - }, - { - "relation": "Validates and parses pet type names during form execution", - "src_name": "Pet Details and Mutation Processing", - "dst_name": "Pet Type Formatting and Metadata Services", - "evidence": "Pet validation routines and update handlers evaluate pet type references and pet names populated via the formatting and type metadata services.", - "key_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 192, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 41, - "column": 21 - } - ], - "description": "" - } - ], - "src_id": "1.4", - "dst_id": "1.5", - "is_static": true, - "all_edges": [ - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.processUpdateForm(Owner, Pet, BindingResult, RedirectAttributes)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 148, - "column": 24 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetController.java|src.main.java.org.springframework.samples.petclinic.owner.PetController.updatePetDetails(Owner, Pet)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 192, - "column": 28 - } - ], - "description": "" - }, - { - "source": "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java|src.main.java.org.springframework.samples.petclinic.owner.PetValidator.validate(Object, Errors)", - "target": "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java|src.main.java.org.springframework.samples.petclinic.model.NamedEntity.getName()", - "call_sites": [ - { - "line": 41, - "column": 21 - } - ], - "description": "" - } - ] - }, - { - "relation": "Binds repository query caching to configured cache region", - "src_name": "Veterinarian Management", - "dst_name": "Cache Configuration and Diagnostics", - "evidence": "`VetRepository` methods annotate data retrieval with `@Cacheable(\"vets\")`, resolving at runtime against the JCache/Caffeine cache region configured by `CacheConfiguration.petclinicCacheConfigurationCustomizer()`.", - "key_edges": [], - "src_id": "2", - "dst_id": "4", - "is_static": false, - "all_edges": [] - }, - { - "relation": "Intercepts incoming web requests to apply locale settings", - "src_name": "Web Presentation and Localization", - "dst_name": "Owner and Pet Management", - "evidence": "`WebConfiguration.addInterceptors()` registers `LocaleChangeInterceptor` into the Spring MVC interceptor chain, processing request parameters (e.g. `?lang=...`) across all `/owners/**` endpoint invocations.", - "key_edges": [], - "src_id": "3", - "dst_id": "1", - "is_static": false, - "all_edges": [] - }, - { - "relation": "Intercepts incoming web requests to apply locale settings", - "src_name": "Web Presentation and Localization", - "dst_name": "Veterinarian Management", - "evidence": "The registered `LocaleChangeInterceptor` in `WebConfiguration` intercepts incoming requests for `/vets` and `/vets.html` endpoints before handler execution in `VetController`.", - "key_edges": [], - "src_id": "3", - "dst_id": "2", - "is_static": false, - "all_edges": [] - }, - { - "relation": "Bootstraps and registers domain controllers and repositories", - "src_name": "Application Bootstrap", - "dst_name": "Owner and Pet Management", - "evidence": "Spring Boot component scanning via `@SpringBootApplication` on `PetClinicApplication` discovers and instantiates `@Controller` classes (`OwnerController`, `PetController`, `VisitController`) and Spring Data repository interfaces (`OwnerRepository`).", - "key_edges": [], - "src_id": "5", - "dst_id": "1", - "is_static": false, - "all_edges": [] - }, - { - "relation": "Bootstraps and registers veterinarian controllers and repositories", - "src_name": "Application Bootstrap", - "dst_name": "Veterinarian Management", - "evidence": "Spring Boot component scanning from `PetClinicApplication` discovers and manages `@Controller` class `VetController` and the `@Transactional` repository `VetRepository`.", - "key_edges": [], - "src_id": "5", - "dst_id": "2", - "is_static": false, - "all_edges": [] - }, - { - "relation": "Registers web configuration and landing page endpoints", - "src_name": "Application Bootstrap", - "dst_name": "Web Presentation and Localization", - "evidence": "Component scanning registers `@Configuration` class `WebConfiguration` and `@Controller` class `WelcomeController` into the Spring MVC application context.", - "key_edges": [], - "src_id": "5", - "dst_id": "3", - "is_static": false, - "all_edges": [] - }, - { - "relation": "Initializes cache subsystem and diagnostic controllers", - "src_name": "Application Bootstrap", - "dst_name": "Cache Configuration and Diagnostics", - "evidence": "Component scanning loads `@Configuration` `@EnableCaching` class `CacheConfiguration` and diagnostic controller `CrashController` into the Spring runtime context.", - "key_edges": [], - "src_id": "5", - "dst_id": "4", - "is_static": false, - "all_edges": [] - } - ] -} \ No newline at end of file diff --git a/.codeboarding/fingerprint.json b/.codeboarding/fingerprint.json deleted file mode 100644 index 382d0efe5a9..00000000000 --- a/.codeboarding/fingerprint.json +++ /dev/null @@ -1,104 +0,0 @@ -{ - "files": { - "gradlew.bat": "36a17f383b4c332b", - "mvnw": "b361ba4c0c2ff98c", - "docker-compose.yml": "0be83d8a2b072ee5", - "settings.gradle": "0cec3f475da38e65", - "build.gradle": "e69845805301a92d", - "gradlew": "0966f8af7b0baf04", - "mvnw.cmd": "2e019b2a755bb2a0", - "LICENSE.txt": "7200000367e0e8b4", - "README.md": "452894f7252a4b77", - "pom.xml": "213a9167ab644e8b", - "k8s/db.yml": "ebf5010dac5be659", - "k8s/petclinic.yml": "d07aee445dd4049b", - "src/main/java/org/springframework/samples/petclinic/package-info.java": "c47015f5f5dfe55c", - "src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java": "e4b30b80e5346cb3", - "src/main/java/org/springframework/samples/petclinic/PetClinicRuntimeHints.java": "4af4c744d9a97bee", - "src/main/java/org/springframework/samples/petclinic/vet/VetController.java": "1f1feebd51b8e5b7", - "src/main/java/org/springframework/samples/petclinic/vet/Specialty.java": "2d520e90d0e574f0", - "src/main/java/org/springframework/samples/petclinic/vet/package-info.java": "42c06b5959b7ed1d", - "src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java": "493373d9c53abc2f", - "src/main/java/org/springframework/samples/petclinic/vet/Vet.java": "7e305a3841d76c97", - "src/main/java/org/springframework/samples/petclinic/vet/Vets.java": "b134120b44cf0c85", - "src/main/java/org/springframework/samples/petclinic/model/package-info.java": "0e9037cd3faf4778", - "src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java": "e42b68533562d6df", - "src/main/java/org/springframework/samples/petclinic/model/Person.java": "0162af9aff8633fa", - "src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java": "7e376b41ef2726ef", - "src/main/java/org/springframework/samples/petclinic/system/CrashController.java": "fc929e5857deca15", - "src/main/java/org/springframework/samples/petclinic/system/package-info.java": "a23988d899042089", - "src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java": "17fbb60dfda59c26", - "src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java": "21091ef254ecf158", - "src/main/java/org/springframework/samples/petclinic/system/WebConfiguration.java": "8dcf5bab4bc062ae", - "src/main/java/org/springframework/samples/petclinic/owner/Visit.java": "d9812e1a6a49f962", - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java": "96a8e36901f9f0ae", - "src/main/java/org/springframework/samples/petclinic/owner/package-info.java": "6d4c037c78aca1d4", - "src/main/java/org/springframework/samples/petclinic/owner/PetController.java": "71bff34a077485f8", - "src/main/java/org/springframework/samples/petclinic/owner/PetTypeRepository.java": "63cd9227368ae477", - "src/main/java/org/springframework/samples/petclinic/owner/Owner.java": "057abdc3a925257c", - "src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java": "3001ad22cd871f61", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java": "7688e8e84f308d72", - "src/main/java/org/springframework/samples/petclinic/owner/PetType.java": "45f7f09669fb2a11", - "src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java": "b65eb540ef95a44a", - "src/main/java/org/springframework/samples/petclinic/owner/VisitController.java": "947de3bd98c0ac75", - "src/main/java/org/springframework/samples/petclinic/owner/Pet.java": "bd1445bd68fb970c", - "src/main/scss/header.scss": "f47fb304f4112c5b", - "src/main/scss/responsive.scss": "2f076b12193e69ed", - "src/main/scss/petclinic.scss": "bc874d75249e5ee5", - "src/main/scss/typography.scss": "70d2d73cdb78a4fa", - "src/main/resources/banner.txt": "fa91f14e1280fd65", - "src/main/resources/application-postgres.properties": "c31618df91805828", - "src/main/resources/application-mysql.properties": "a732ef1a5a1a5936", - "src/main/resources/application.properties": "0dd8a5ee46bebbf6", - "src/main/resources/templates/error.html": "6bded8d67df72686", - "src/main/resources/templates/welcome.html": "5c210fb0a3b5c32b", - "src/main/resources/templates/pets/createOrUpdateVisitForm.html": "7c225e4ff3b1acf9", - "src/main/resources/templates/pets/createOrUpdatePetForm.html": "b1af6097ef7275d1", - "src/main/resources/templates/vets/vetList.html": "f3d365c7fbb347f8", - "src/main/resources/templates/fragments/inputField.html": "d03ffe2bb4dd4008", - "src/main/resources/templates/fragments/selectField.html": "bae17ba02ad58fbf", - "src/main/resources/templates/fragments/layout.html": "ed52e1986bad09c1", - "src/main/resources/templates/owners/ownerDetails.html": "adf2ef3ba0e6994f", - "src/main/resources/templates/owners/findOwners.html": "8e18cd0058ac41b8", - "src/main/resources/templates/owners/createOrUpdateOwnerForm.html": "a4672fd8918978eb", - "src/main/resources/templates/owners/ownersList.html": "0592b5f3bd373b80", - "src/main/resources/messages/messages.properties": "f89e3a58563043b3", - "src/main/resources/messages/messages_ru.properties": "9baeeab49c2c00ae", - "src/main/resources/messages/messages_ko.properties": "221dc73f78458f93", - "src/main/resources/messages/messages_pt.properties": "3a0c2e92d3fdd053", - "src/main/resources/messages/messages_fa.properties": "49d7dd984cc6a0aa", - "src/main/resources/messages/messages_es.properties": "9f5418313b1f38da", - "src/main/resources/messages/messages_hi.properties": "a67f49789697be12", - "src/main/resources/messages/messages_tr.properties": "6c6cc94e6f79f81f", - "src/main/resources/messages/messages_de.properties": "0b932b63507b2a7b", - "src/main/resources/messages/messages_en.properties": "9a73ca97a971bcb5", - "src/main/resources/messages/messages_ja.properties": "03490232af3385c5", - "src/main/resources/static/resources/images/pets.png": "e2fb3855fd8907f3", - "src/main/resources/static/resources/images/spring-logo-dataflow-mobile.png": "318d29de7c95ddc4", - "src/main/resources/static/resources/images/favicon.png": "a514d31782d9ccb0", - "src/main/resources/static/resources/images/spring-logo.svg": "2a64e3071a43582a", - "src/main/resources/static/resources/images/spring-logo-dataflow.png": "842829601023e6f9", - "src/main/resources/static/resources/css/petclinic.css": "839570356c80e992", - "src/main/resources/static/resources/fonts/montserrat-webfont.woff": "19abc58ee8a2407c", - "src/main/resources/static/resources/fonts/varela_round-webfont.eot": "3a5bb11597ffdec6", - "src/main/resources/static/resources/fonts/varela_round-webfont.svg": "79c3ac674e684446", - "src/main/resources/static/resources/fonts/montserrat-webfont.eot": "22eed21ae7ad7129", - "src/main/resources/static/resources/fonts/varela_round-webfont.ttf": "9a7dd6f152251715", - "src/main/resources/static/resources/fonts/montserrat-webfont.ttf": "3d34b4d9d0ae1883", - "src/main/resources/static/resources/fonts/montserrat-webfont.svg": "b0f7c984e1129569", - "src/main/resources/static/resources/fonts/varela_round-webfont.woff": "b37b22dfc57bb80f", - "src/main/resources/db/mysql/user.sql": "15d05e7eb5b142ea", - "src/main/resources/db/mysql/petclinic_db_setup_mysql.txt": "aebf9e6afd667194", - "src/main/resources/db/mysql/data.sql": "b8be4376faab1adf", - "src/main/resources/db/mysql/schema.sql": "2f114beaa7c2d9c3", - "src/main/resources/db/h2/data.sql": "5ec3180514293c4d", - "src/main/resources/db/h2/schema.sql": "fe6beab3362a60d3", - "src/main/resources/db/postgres/data.sql": "c78cd5ddfbc274fa", - "src/main/resources/db/postgres/petclinic_db_setup_postgres.txt": "ce73fba559631094", - "src/main/resources/db/postgres/schema.sql": "44dca0d0e2db6415", - "src/checkstyle/nohttp-checkstyle-suppressions.xml": "351752640de562bf", - "src/checkstyle/nohttp-checkstyle.xml": "39a1d8b1b31622bc", - "gradle/wrapper/gradle-wrapper.properties": "ebd7eb6c6bb918a8", - "gradle/wrapper/gradle-wrapper.jar": "d2877f2fca09f21d" - } -} \ No newline at end of file diff --git a/.codeboarding/health/health_report.json b/.codeboarding/health/health_report.json deleted file mode 100644 index d4eeba6aaeb..00000000000 --- a/.codeboarding/health/health_report.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "repository_name": ".codeboarding-target", - "timestamp": "2026-08-26T23:23:55.910603+00:00", - "overall_score": 1.0, - "check_summaries": [ - { - "check_name": "function_size", - "description": "Checks that functions/methods do not exceed line count thresholds", - "languages": [], - "check_type": "standard", - "total_entities_checked": 88, - "findings_count": 0, - "warning_count": 0, - "score": 1.0, - "finding_groups": [] - }, - { - "check_name": "circular_dependencies", - "description": "Detects circular dependencies between packages", - "languages": [], - "check_type": "circular_dependencies", - "cycles": [], - "packages_checked": 5, - "packages_in_cycles": 0 - }, - { - "check_name": "unused_code_diagnostics", - "description": "Detects unused imports, variables, functions, and dead code via LSP diagnostics", - "languages": [], - "check_type": "standard", - "total_entities_checked": 0, - "findings_count": 0, - "warning_count": 0, - "score": 1.0, - "finding_groups": [] - } - ], - "file_summaries": [] -} \ No newline at end of file diff --git a/.codeboarding/static_analysis.pkl b/.codeboarding/static_analysis.pkl deleted file mode 100644 index 227264964109a79b1accc351288dd371d1800597..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 76398 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 IHPHS40Jhgdpa1{> diff --git a/.codeboarding/static_analysis.sha b/.codeboarding/static_analysis.sha deleted file mode 100644 index 12baa1c4c3e..00000000000 --- a/.codeboarding/static_analysis.sha +++ /dev/null @@ -1,2 +0,0 @@ -v5 -0e443f6649db1126235053da21f975cea7a3a0a8 diff --git a/.github/workflows/codeboarding-sync.yml b/.github/workflows/codeboarding-sync.yml deleted file mode 100644 index 23115086ed7..00000000000 --- a/.github/workflows/codeboarding-sync.yml +++ /dev/null @@ -1,50 +0,0 @@ -name: CodeBoarding sync - -on: - push: - branches: ['main'] - # Loop guard: don't re-trigger on the files this workflow itself commits. - # List generated files only: user-authored scope configuration must still trigger - # regeneration, while a merged sync PR must not trigger a loop. - paths-ignore: - - '.codeboarding/*.md' - - '.codeboarding/analysis.json' - - '.codeboarding/fingerprint.json' - - '.codeboarding/static_analysis.pkl' - - '.codeboarding/static_analysis.sha' - - '.codeboarding/codeboarding_version.json' - - '.codeboarding/health/health_report.json' - - 'docs/development/architecture.md' - workflow_dispatch: - inputs: - force_full: - description: 'Ignore the committed baseline and rebuild it from scratch (full analysis).' - type: boolean - required: false - default: false - -permissions: - contents: write # commit the generated baseline + docs to the branch - id-token: write # identifies this repo to CodeBoarding's hosted tier, used by the free - # tier AND a license, and as the fallback until your own key exists - -concurrency: - # Serialize against itself so a push landing mid-run can't make two commits. - group: codeboarding-sync - cancel-in-progress: false - -jobs: - sync: - runs-on: ubuntu-latest - timeout-minutes: 60 - steps: - - uses: CodeBoarding/CodeBoarding-action@v1 - with: - mode: sync - force_full: ${{ inputs.force_full || false }} - target_branch: 'main' - # Free tier needs no secret; these fall through to the hosted OIDC tier when - # unset. Add either repo secret (Settings → Secrets and variables → Actions) - # for more/unmetered usage; no YAML edit required. - llm_api_key: ${{ secrets.OPENROUTER_API_KEY }} # BYO LLM provider key (OpenRouter) - license_key: ${{ secrets.CODEBOARDING_LICENSE }} # CodeBoarding paid plan diff --git a/.github/workflows/codeboarding.yml b/.github/workflows/codeboarding.yml index f8113576fbc..a846d6a42d1 100644 --- a/.github/workflows/codeboarding.yml +++ b/.github/workflows/codeboarding.yml @@ -2,7 +2,7 @@ name: CodeBoarding review on: pull_request: - types: [opened, reopened, ready_for_review, closed, synchronize] + types: [opened, reopened, ready_for_review, synchronize] issue_comment: types: [created] @@ -12,7 +12,7 @@ permissions: {} concurrency: group: codeboarding-${{ github.event.pull_request.number || github.event.issue.number }} - cancel-in-progress: ${{ github.event_name == 'pull_request' && github.event.action == 'closed' }} + cancel-in-progress: false jobs: review: @@ -25,7 +25,7 @@ jobs: id-token: write # mint a GitHub OIDC token for the free hosted tier (write is the only level for id-token) actions: read # let a repeat review download the analysis an earlier run published, instead of re-deriving the whole PR if: > - (github.event_name == 'pull_request' && github.event.action != 'closed' && + (github.event_name == 'pull_request' && github.event.pull_request.draft == false && github.event.pull_request.head.repo.full_name == github.repository) || (github.event_name == 'issue_comment' && github.event.issue.pull_request != null && @@ -34,8 +34,6 @@ jobs: steps: - uses: CodeBoarding/CodeBoarding-action@v1 with: - # Free tier needs no secret; these fall through to the hosted OIDC tier when - # unset. Add either repo secret (Settings → Secrets and variables → Actions) - # for more/unmetered usage; no YAML edit required. - llm_api_key: ${{ secrets.OPENROUTER_API_KEY }} # BYO LLM provider key (OpenRouter) - license_key: ${{ secrets.CODEBOARDING_LICENSE }} # CodeBoarding paid plan + mode: review + llm: openrouter + openrouter_api_key: ${{ secrets.OPENROUTER_API_KEY }}