1:package business;
   2:
   3:import business.data.Defect;
   4:import business.data.DefectsDAO;
   5:import java.util.List;
   6:
   7:
   8:/**
   9: * Default implementation of DefectsManager interface.
  10: */
  11:
  12:public class DefectsManagerImpl implements DefectsManager {
  13:    private DefectsDAO dao;
  14:    
  15:    public void setDefectsDAO(DefectsDAO dao) {
  16:        this.dao = dao;
  17:    }
  18:    
  19:    public List getDefects() {
  20:        return dao.getDefects();
  21:    }
  22:    
  23:    public Defect getDefect(long defectId) {
  24:        return dao.getDefect(defectId);
  25:    }
  26:    
  27:    public void saveDefect(Defect defect) {
  28:        
  29:        //Audit new records (who/when):
  30:        if (defect.getId() == 0) {
  31:            defect.setSubmittedBy("Smith,John");
  32:            defect.setSubmittedOn(new java.util.Date());
  33:        }
  34:        
  35:        //If record is being saved with resolution text, audit and flag as resolved:
  36:        if (defect.getResolution() != null && defect.getResolution().trim() != "") {
  37:            defect.setIsResolved(true);
  38:            defect.setResolvedBy("Smith,John");
  39:            defect.setResolvedOn(new java.util.Date());
  40:        }
  41:        
  42:        dao.saveDefect(defect);
  43:    }
  44:    
  45:    public void removeDefect(long defectId) {
  46:        dao.removeDefect(defectId);
  47:    }
  48:}