View Javadoc
1   package org.woehlke.jakartaee.petclinic.pet.db;
2   
3   import jakarta.ejb.EJB;
4   import jakarta.ejb.Stateless;
5   import lombok.extern.java.Log;
6   import org.woehlke.jakartaee.petclinic.owner.Owner;
7   import org.woehlke.jakartaee.petclinic.pet.Pet;
8   
9   import jakarta.annotation.PostConstruct;
10  import jakarta.annotation.PreDestroy;
11  import org.woehlke.jakartaee.petclinic.visit.Visit;
12  
13  import java.io.Serializable;
14  import java.util.List;
15  
16  
17  /**
18   *
19   */
20  @Log
21  @Stateless
22  public class PetServiceImpl implements PetService, Serializable  {
23  
24      private static final long serialVersionUID = -2093524918552358722L;
25  
26      @EJB
27      private PetDao petDao;
28  
29      @Override
30      public Pet addNew(Pet pet) {
31          log.info("addNew Pet: " + pet.toString());
32          return this.petDao.addNew(pet);
33      }
34  
35      @Override
36      public List<Pet> getAll() {
37          return this.petDao.getAll();
38      }
39  
40      @Override
41      public Pet findById(long petId) {
42          return this.petDao.findById(petId);
43      }
44  
45      @Override
46      public Pet update(Pet pet) {
47          log.info("update Pet: " + pet.toString());
48          return this.petDao.update(pet);
49      }
50  
51      @Override
52      public void delete(long id) {
53          log.info("delete Pet: " + id);
54          this.petDao.delete(id);
55      }
56  
57  
58      @PostConstruct
59      public void postConstruct() {
60          log.info("postConstruct: "+PetServiceImpl.class.getSimpleName());
61      }
62  
63      @PreDestroy
64      public void preDestroy() {
65          log.info("preDestroy: "+PetServiceImpl.class.getSimpleName());
66      }
67  
68      @Override
69      public List<Visit> getVisits(Pet pet) {
70          return this.petDao.getVisits(pet);
71      }
72  
73      @Override
74      public List<Pet> getAllPetsOfAnOwner(Owner owner) {
75          return this.petDao.getPetsAsList(owner);
76      }
77  }