mirror of
https://github.com/spring-projects/spring-petclinic.git
synced 2025-07-20 06:45:50 +00:00
Refactored OwnerService
This commit is contained in:
parent
78fdf70b98
commit
f94528c30a
3 changed files with 56 additions and 1 deletions
|
@ -0,0 +1,11 @@
|
||||||
|
package org.springframework.samples.petclinic.owner;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
public interface OwnerService {
|
||||||
|
Owner findOwnerById(Integer id);
|
||||||
|
Set<Owner> getAllOwners();
|
||||||
|
Owner saveOwner(Owner owner);
|
||||||
|
void deleteOwner(Owner owner);
|
||||||
|
void deleteOwnerById(Integer id);
|
||||||
|
}
|
|
@ -0,0 +1,45 @@
|
||||||
|
package org.springframework.samples.petclinic.owner;
|
||||||
|
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
import java.util.stream.StreamSupport;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class OwnerServiceMap implements OwnerService {
|
||||||
|
private final OwnerRepository ownerRepository;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public OwnerServiceMap(OwnerRepository ownerRepository) {
|
||||||
|
this.ownerRepository = ownerRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Owner findOwnerById(Integer id) {
|
||||||
|
return ownerRepository.findById(id).orElse(null); // Handle Optional with null or custom logic
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Set<Owner> getAllOwners() {
|
||||||
|
return StreamSupport.stream(ownerRepository.findAll().spliterator(), false)
|
||||||
|
.collect(Collectors.toSet());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Owner saveOwner(Owner owner) {
|
||||||
|
return ownerRepository.save(owner);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteOwner(Owner owner) {
|
||||||
|
ownerRepository.delete(owner);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteOwnerById(Integer id) {
|
||||||
|
ownerRepository.deleteById(id);
|
||||||
|
}
|
||||||
|
}
|
|
@ -87,7 +87,6 @@ class PetController {
|
||||||
private void setAllowedFields(WebDataBinder dataBinder) {
|
private void setAllowedFields(WebDataBinder dataBinder) {
|
||||||
dataBinder.setDisallowedFields("id");
|
dataBinder.setDisallowedFields("id");
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/pets/new")
|
@GetMapping("/pets/new")
|
||||||
public String initCreationForm(Owner owner, ModelMap model) {
|
public String initCreationForm(Owner owner, ModelMap model) {
|
||||||
Pet pet = new Pet();
|
Pet pet = new Pet();
|
||||||
|
|
Loading…
Reference in a new issue