1 package org.springframework.samples.petclinic.ojb; 2 3 import java.util.Collection ; 4 5 import org.apache.ojb.broker.query.Criteria; 6 import org.apache.ojb.broker.query.Query; 7 import org.apache.ojb.broker.query.QueryByCriteria; 8 9 import org.springframework.dao.DataAccessException; 10 import org.springframework.orm.ojb.support.PersistenceBrokerDaoSupport; 11 import org.springframework.samples.petclinic.Clinic; 12 import org.springframework.samples.petclinic.Owner; 13 import org.springframework.samples.petclinic.Pet; 14 import org.springframework.samples.petclinic.PetType; 15 import org.springframework.samples.petclinic.Vet; 16 import org.springframework.samples.petclinic.Visit; 17 18 27 public class PersistenceBrokerClinic extends PersistenceBrokerDaoSupport implements Clinic { 28 29 public Collection getVets() throws DataAccessException { 30 QueryByCriteria query = new QueryByCriteria(Vet.class); 31 query.addOrderByAscending("lastName"); 32 query.addOrderByAscending("firstName"); 33 return getPersistenceBrokerTemplate().getCollectionByQuery(query); 34 } 35 36 public Collection getPetTypes() throws DataAccessException { 37 QueryByCriteria query = new QueryByCriteria(PetType.class); 38 query.addOrderByAscending("name"); 39 return getPersistenceBrokerTemplate().getCollectionByQuery(query); 40 } 41 42 public Collection findOwners(String lastName) throws DataAccessException { 43 Criteria criteria = new Criteria(); 44 criteria.addLike("lastName", lastName + "%"); 45 Query query = new QueryByCriteria(Owner.class, criteria); 46 return getPersistenceBrokerTemplate().getCollectionByQuery(query); 47 } 48 49 public Owner loadOwner(int id) throws DataAccessException { 50 return (Owner) getPersistenceBrokerTemplate().getObjectById(Owner.class, new Integer (id)); 51 } 52 53 public Pet loadPet(int id) throws DataAccessException { 54 return (Pet) getPersistenceBrokerTemplate().getObjectById(Pet.class, new Integer (id)); 55 } 56 57 public void storeOwner(Owner owner) throws DataAccessException { 58 getPersistenceBrokerTemplate().store(owner); 59 } 60 61 public void storePet(Pet pet) throws DataAccessException { 62 getPersistenceBrokerTemplate().store(pet); 63 } 64 65 public void storeVisit(Visit visit) { 66 getPersistenceBrokerTemplate().store(visit); 67 } 68 69 } 70 | Popular Tags |