/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package qa.qcri.aidr.predictui.facade.imp; import java.util.List; import javax.ejb.EJB; import javax.ejb.Stateless; import qa.qcri.aidr.dbmanager.dto.DocumentDTO; import qa.qcri.aidr.dbmanager.dto.ModelNominalLabelDTO; import qa.qcri.aidr.predictui.facade.ModelNominalLabelFacade; import qa.qcri.aidr.dbmanager.ejb.remote.facade.TaskManagerRemote; //import qa.qcri.aidr.predictui.dto.ModelNominalLabelDTO; /** * * @author Imran * * Koushik: added try/catch */ @Stateless public class ModelNominalLabelImp implements ModelNominalLabelFacade { @EJB private TaskManagerRemote<DocumentDTO, Long> taskManager; @EJB private qa.qcri.aidr.dbmanager.ejb.remote.facade.ModelNominalLabelResourceFacade remoteModelNominalLabelEJB; //@PersistenceContext(unitName = "qa.qcri.aidr.predictui-EJBS") //private EntityManager em; public List<ModelNominalLabelDTO> getAllModelNominalLabels() { List<ModelNominalLabelDTO> modelNominalLabelList = remoteModelNominalLabelEJB.getAllModelNominalLabels(); return modelNominalLabelList; /* Query query = em.createNamedQuery("ModelNominalLabel.findAll", ModelNominalLabel.class); try { List<ModelNominalLabel> modelNominalLabelList = query.getResultList(); return modelNominalLabelList; } catch (NoResultException e) { return null; } */ } public List<ModelNominalLabelDTO> getAllModelNominalLabelsByModelID(Long modelID, String crisisCode) { List<ModelNominalLabelDTO> modelNominalLabelDTOList = remoteModelNominalLabelEJB.getAllModelNominalLabelsByModelID(modelID, crisisCode); return modelNominalLabelDTOList; /* List<ModelNominalLabel> modelNominalLabelList = null; List<ModelNominalLabelDTO> modelNominalLabelDTOList = new ArrayList<ModelNominalLabelDTO>(); Model model = em.find(Model.class, modelID); if (model != null) { Query query = em.createNamedQuery("ModelNominalLabel.findByModel", ModelNominalLabel.class); query.setParameter("model", model); try { modelNominalLabelList = query.getResultList(); } catch (NoResultException e) { return null; } //if (modelNominalLabelList.isEmpty()){ // return null; //} Boolean modelStatus = model.getModelFamily().getIsActive(); Integer nominalAttributeId = model.getModelFamily().getNominalAttribute().getNominalAttributeID(); for (ModelNominalLabel labelEntity : modelNominalLabelList) { //Getting training examples for each label int trainingSet = 0; NominalLabel nominalLabel = labelEntity.getNominalLabel(); //Collection<Document> docList = nominalLabel.getDocumentCollection(); Collection<Document> docList = null; if (nominalLabel != null && !nominalLabel.getNominalLabelCode().equalsIgnoreCase("null")) { try { List<DocumentDTO> dtoList = taskManager.getNominalLabelDocumentCollection(new Long(nominalLabel.getNominalLabelID())); docList = Document.toLocalDocumentList(dtoList); for (Document document : docList) { if (!(document.getIsEvaluationSet())) { trainingSet++; } } } catch (PropertyNotSetException e) { // TODO Auto-generated catch block e.printStackTrace(); } } // Deep copying modelNominalLabel to ModelNominalLabelDTO ModelNominalLabelDTO mnlDTO = new ModelNominalLabelDTO(); mnlDTO.setClassifiedDocumentCount(labelEntity.getClassifiedDocumentCount()); mnlDTO.setLabelAuc(labelEntity.getLabelAuc()); mnlDTO.setLabelPrecision(labelEntity.getLabelPrecision()); mnlDTO.setLabelRecall(labelEntity.getLabelRecall()); mnlDTO.setModel(labelEntity.getModel()); mnlDTO.setModelNominalLabelPK(labelEntity.getModelNominalLabelPK()); mnlDTO.setNominalLabel(labelEntity.getNominalLabel()); mnlDTO.setTrainingDocuments(trainingSet); mnlDTO.setModelStatus(modelStatus==true ? "RUNNING" : "NOT RUNNING"); mnlDTO.setNominalAttributeId(nominalAttributeId); modelNominalLabelDTOList.add(mnlDTO); } } return modelNominalLabelDTOList; */ } @Override public void deleteByModel(Long modelID) { remoteModelNominalLabelEJB.deleteModelNominalLabelByModelID(modelID); } }