/* * OpenClinica is distributed under the * GNU Lesser General Public License (GNU LGPL). * For details see: http://www.openclinica.org/license * copyright 2003-2005 Akaza Research */ package org.akaza.openclinica.dao.extract; import org.akaza.openclinica.bean.core.EntityBean; import org.akaza.openclinica.bean.extract.ArchivedDatasetFileBean; import org.akaza.openclinica.bean.login.UserAccountBean; import org.akaza.openclinica.dao.core.AuditableEntityDAO; import org.akaza.openclinica.dao.core.DAODigester; import org.akaza.openclinica.dao.core.SQLFactory; import org.akaza.openclinica.dao.core.TypeNames; import org.akaza.openclinica.dao.login.UserAccountDAO; import java.util.ArrayList; import java.util.Collection; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import javax.sql.DataSource; /** * @author thickerson * * TODO To change the template for this generated type comment go to Window - * Preferences - Java - Code Style - Code Templates */ public class ArchivedDatasetFileDAO extends AuditableEntityDAO { private DAODigester digester; public ArchivedDatasetFileDAO(DataSource ds) { super(ds); digester = SQLFactory.getInstance().getDigester(digesterName); this.setQueryNames(); } public ArchivedDatasetFileDAO(DataSource ds, DAODigester digester) { super(ds); this.digester = digester; } protected void setQueryNames() { getCurrentPKName = "getCurrentPK"; } @Override protected void setDigesterName() { digesterName = SQLFactory.getInstance().DAO_ARCHIVED_DATASET_FILE; } @Override public void setTypesExpected() { this.unsetTypeExpected(); this.setTypeExpected(1, TypeNames.INT);// file id this.setTypeExpected(2, TypeNames.STRING);// name this.setTypeExpected(3, TypeNames.INT);// dataset id this.setTypeExpected(4, TypeNames.INT);// export format id this.setTypeExpected(5, TypeNames.STRING);// file_reference this.setTypeExpected(6, TypeNames.INT);// run_time this.setTypeExpected(7, TypeNames.INT);// file_size this.setTypeExpected(8, TypeNames.DATE);// date_created this.setTypeExpected(9, TypeNames.INT);// owner id } public EntityBean create(EntityBean eb) { ArchivedDatasetFileBean fb = (ArchivedDatasetFileBean) eb; HashMap variables = new HashMap(); HashMap nullVars = new HashMap(); variables.put(Integer.valueOf(1), fb.getName()); variables.put(Integer.valueOf(2), Integer.valueOf(fb.getDatasetId())); variables.put(Integer.valueOf(3), Integer.valueOf(fb.getExportFormatId())); variables.put(Integer.valueOf(4), fb.getFileReference()); variables.put(Integer.valueOf(5), Integer.valueOf(fb.getFileSize())); variables.put(Integer.valueOf(6), new Double(fb.getRunTime())); variables.put(Integer.valueOf(7), Integer.valueOf(fb.getOwnerId())); this.executeWithPK(digester.getQuery("create"), variables, nullVars); if (isQuerySuccessful()) { fb.setId(getLatestPK()); } return fb; } public EntityBean update(EntityBean eb) { ArchivedDatasetFileBean fb = (ArchivedDatasetFileBean) eb; HashMap variables = new HashMap(); HashMap nullVars = new HashMap(); variables.put(Integer.valueOf(1), fb.getName()); variables.put(Integer.valueOf(2), Integer.valueOf(fb.getDatasetId())); variables.put(Integer.valueOf(3), Integer.valueOf(fb.getExportFormatId())); variables.put(Integer.valueOf(4), fb.getFileReference()); variables.put(Integer.valueOf(5), Integer.valueOf(fb.getFileSize())); variables.put(Integer.valueOf(6), new Double(fb.getRunTime())); variables.put(Integer.valueOf(7), Integer.valueOf(fb.getOwnerId())); variables.put(Integer.valueOf(8), Integer.valueOf(fb.getId())); this.execute(digester.getQuery("update"), variables, nullVars); return fb; } public Object getEntityFromHashMap(HashMap hm) { ArchivedDatasetFileBean fb = new ArchivedDatasetFileBean(); fb.setId(((Integer) hm.get("archived_dataset_file_id")).intValue()); fb.setDateCreated((Date) hm.get("date_created")); fb.setName((String) hm.get("name")); fb.setId(((Integer) hm.get("archived_dataset_file_id")).intValue()); fb.setDatasetId(((Integer) hm.get("dataset_id")).intValue()); fb.setExportFormatId(((Integer) hm.get("export_format_id")).intValue()); fb.setFileReference((String) hm.get("file_reference")); fb.setRunTime(((Integer) hm.get("run_time")).doubleValue()); fb.setFileSize(((Integer) hm.get("file_size")).intValue()); fb.setOwnerId(((Integer) hm.get("owner_id")).intValue()); UserAccountDAO uaDAO = new UserAccountDAO(this.ds); UserAccountBean owner = (UserAccountBean) uaDAO.findByPK(fb.getOwnerId()); fb.setOwner(owner); return fb; } public void deleteArchiveDataset(ArchivedDatasetFileBean adfBean){ HashMap variables = new HashMap(); variables.put(Integer.valueOf(1), adfBean.getId()); this.execute(digester.getQuery("deleteArchiveDataset"), variables); } public Collection findAll() { this.setTypesExpected(); ArrayList alist = this.select(digester.getQuery("findAll")); ArrayList al = new ArrayList(); Iterator it = alist.iterator(); while (it.hasNext()) { ArchivedDatasetFileBean fb = (ArchivedDatasetFileBean) this.getEntityFromHashMap((HashMap) it.next()); al.add(fb); } return al; } public Collection findAll(String strOrderByColumn, boolean blnAscendingSort, String strSearchPhrase) { ArrayList al = new ArrayList(); return al; } public EntityBean findByPK(int ID) { ArchivedDatasetFileBean fb = new ArchivedDatasetFileBean(); this.setTypesExpected(); HashMap variables = new HashMap(); variables.put(Integer.valueOf(1), Integer.valueOf(ID)); String sql = digester.getQuery("findByPK"); ArrayList alist = this.select(sql, variables); Iterator it = alist.iterator(); if (it.hasNext()) { fb = (ArchivedDatasetFileBean) this.getEntityFromHashMap((HashMap) it.next()); } return fb; } public ArrayList findByDatasetId(int did) { // ArchivedDatasetFileBean fb = new ArchivedDatasetFileBean(); this.setTypesExpected(); ArrayList al = new ArrayList(); HashMap variables = new HashMap(); variables.put(Integer.valueOf(1), Integer.valueOf(did)); String sql = digester.getQuery("findByDatasetId"); ArrayList alist = this.select(sql, variables); Iterator it = alist.iterator(); while (it.hasNext()) { ArchivedDatasetFileBean fb = (ArchivedDatasetFileBean) this.getEntityFromHashMap((HashMap) it.next()); al.add(fb); } return al; } public ArrayList findByDatasetIdByDate(int did) { // ArchivedDatasetFileBean fb = new ArchivedDatasetFileBean(); this.setTypesExpected(); ArrayList al = new ArrayList(); HashMap variables = new HashMap(); variables.put(Integer.valueOf(1), Integer.valueOf(did)); String sql = digester.getQuery("findByDatasetIdByDate"); ArrayList alist = this.select(sql, variables); Iterator it = alist.iterator(); while (it.hasNext()) { ArchivedDatasetFileBean fb = (ArchivedDatasetFileBean) this.getEntityFromHashMap((HashMap) it.next()); al.add(fb); } return al; } public Collection findAllByPermission(Object objCurrentUser, int intActionType, String strOrderByColumn, boolean blnAscendingSort, String strSearchPhrase) { ArrayList al = new ArrayList(); return al; } public Collection findAllByPermission(Object objCurrentUser, int intActionType) { ArrayList al = new ArrayList(); return al; } }