/* * 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.web.bean; import java.util.ArrayList; import java.util.List; import org.akaza.openclinica.bean.managestudy.DisplayStudyEventBean; /** * @author jxu * * TODO To change the template for this generated type comment go to Window - * Preferences - Java - Code Style - Code Templates */ public class DisplayStudyEventRow extends EntityBeanRow { // columns: public static final int COL_EVENT = 0; public static final int COL_START_DATE = 1; // public static final int COL_LAST_UPDATED= 2; public static final int COL_LOCATION = 3; public static final int COL_SUBJECT_EVENT_STATUS = 4; public static final int COL_STATUS = 5; /* * (non-Javadoc) * * @see org.akaza.openclinica.core.EntityBeanRow#compareColumn(java.lang.Object, * int) */ @Override protected int compareColumn(Object row, int sortingColumn) { if (!row.getClass().equals(DisplayStudyEventRow.class)) { return 0; } DisplayStudyEventBean thisEvent = (DisplayStudyEventBean) bean; DisplayStudyEventBean argEvent = (DisplayStudyEventBean) ((DisplayStudyEventRow) row).bean; int answer = 0; switch (sortingColumn) { case COL_EVENT: answer = thisEvent.getStudyEvent().getStudyEventDefinition().getName().toLowerCase().compareTo( argEvent.getStudyEvent().getStudyEventDefinition().getName().toLowerCase()); break; case COL_START_DATE: answer = compareDate(thisEvent.getStudyEvent().getDateStarted(), argEvent.getStudyEvent().getDateStarted()); break; // case COL_LAST_UPDATED: // answer = // compareDate(thisEvent.getStudyEvent().getUpdatedDate(),argEvent.getStudyEvent().getUpdatedDate()); // break; case COL_LOCATION: answer = thisEvent.getStudyEvent().getLocation().toLowerCase().compareTo(argEvent.getStudyEvent().getLocation().toLowerCase()); break; case COL_SUBJECT_EVENT_STATUS: answer = thisEvent.getStudyEvent().getSubjectEventStatus().compareTo(argEvent.getStudyEvent().getSubjectEventStatus()); break; case COL_STATUS: answer = thisEvent.getStudyEvent().getStatus().compareTo(argEvent.getStudyEvent().getStatus()); break; } return answer; } @Override public String getSearchString() { DisplayStudyEventBean thisEvent = (DisplayStudyEventBean) bean; return thisEvent.getStudyEvent().getStudyEventDefinition().getName() + " " + thisEvent.getStudyEvent().getLocation(); } /* * (non-Javadoc) * * @see org.akaza.openclinica.core.EntityBeanRow#generatRowsFromBeans(java.util.ArrayList) */ @Override public ArrayList generatRowsFromBeans(ArrayList beans) { return DisplayStudyEventRow.generateRowsFromBeans(beans); } public static ArrayList generateRowsFromBeans(List beans) { ArrayList answer = new ArrayList(); Class[] parameters = null; Object[] arguments = null; for (int i = 0; i < beans.size(); i++) { try { DisplayStudyEventRow row = new DisplayStudyEventRow(); row.setBean((DisplayStudyEventBean) beans.get(i)); answer.add(row); } catch (Exception e) { } } return answer; } }