Package com.nayidisha.pointy.services.patient

Source Code of com.nayidisha.pointy.services.patient.PatientServiceImpl

package com.nayidisha.pointy.services.patient;

import java.util.ArrayList;
import java.util.List;

import javax.inject.Inject;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import com.nayidisha.pointy.dao.patient.PatientDAO;
import com.nayidisha.pointy.domain.Patient;

@Service("patientService")
@Transactional(readOnly = true, propagation = Propagation.SUPPORTS)
public class PatientServiceImpl implements PatientService {

  private static Logger LOG = LoggerFactory.getLogger(PatientServiceImpl.class);
  private PatientDAO patientDAO;
 
  @Inject
  public PatientServiceImpl(PatientDAO patientDAO) {
    this.patientDAO = patientDAO;
  }
 
  @Override
  public Patient findPatientById(Long patientId) {
    return patientDAO.load(patientId);
  }
     
  @Override
  public List<Patient> findAllPatients() {
    List<Patient> validPatientList = new ArrayList<Patient>();
    List<Patient> patientList = patientDAO.loadAll();
    if (patientList != null){
      for (Patient patient : patientList) {
        if (patient.valid()){
          validPatientList.add(patient);
        } else {
          LOG.warn("Patient entity with Id: " + patient.getId() + " is invalid. Skipping...");
        }
      }
    }
    return validPatientList;
  }

  @Override
  public Patient findByLastName(String lastName) {
    return patientDAO.findByLastName(lastName);
  }

  @Transactional(readOnly=false)
  @Override
  public void createPatient(Patient patient) {
    patientDAO.save(patient);
   
  }

  @Transactional(readOnly=false)
  @Override
  public void deletePatient(Long patientId) {
    if (patientId != null){
      Patient patient = patientDAO.load(patientId);
      patientDAO.delete(patient);
    }
   
  }

}
TOP

Related Classes of com.nayidisha.pointy.services.patient.PatientServiceImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.