package info.ozkan.vipera.views.doctor; import info.ozkan.vipera.business.doctor.DoctorBrowseModel; import info.ozkan.vipera.business.doctor.DoctorFacade; import info.ozkan.vipera.business.doctor.DoctorManagerResult; import info.ozkan.vipera.entities.Doctor; import info.ozkan.vipera.entities.DoctorTitle; import java.io.Serializable; import java.util.List; import javax.inject.Inject; import javax.inject.Named; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Scope; /** * Hekimler üzerinde arama işlemi yapan Bean sınıfı * * @author Ömer Özkan * */ @Named("doctorBrowse") @Scope("session") public class DoctorBrowseBean implements Serializable { /** * serial */ private static final long serialVersionUID = 4019437522915983064L; /** * LOGGER */ private static final Logger LOGGER = LoggerFactory .getLogger(DoctorBrowseBean.class); /** * Arama model sınıfı nesnesi */ private DoctorBrowseModel model = new DoctorBrowseModel(); /** * Üye aktif mi? */ private boolean active; /** * Arama sonucu */ private List<Doctor> result; /** * İşletme katmanı */ @Inject private DoctorFacade doctorFacade; /** * Veritabanından hekim arama işlemi yapar ekranda gösterir */ public void search() { final DoctorManagerResult searchResult = doctorFacade.search(model); result = searchResult.getDoctors(); LOGGER.info("{} doctors are found", result.size()); } /** * @return the model */ public DoctorBrowseModel getModel() { return model; } /** * @param model * the model to set */ public void setModel(final DoctorBrowseModel model) { this.model = model; } /** * Hekim Ünvanları * * @return */ public DoctorTitle[] getDoctorTitles() { return DoctorTitle.values(); } /** * @return the active */ public boolean isActive() { return active; } /** * @param active * the active to set */ public void setActive(final boolean active) { this.active = active; } /** * @return the result */ public List<Doctor> getResult() { return result; } /** * @param result * the result to set */ public void setResult(final List<Doctor> result) { this.result = result; } /** * @param doctorFacade * the doctorFacade to set */ public void setDoctorFacade(final DoctorFacade doctorFacade) { this.doctorFacade = doctorFacade; } }