/** * Find messages order by descending timestamp by different criteria. * * @param data The message data value object carrying query criteria. * @param numberOfMessage max no. of message in return. * @param offset no. of starting record in return. * @throws DAOException */ public List findMessagesByHistory(MessageDVO data, int numberOfMessage, int offset) throws DAOException { List parameters = new ArrayList(); boolean hasSearchCriteria = false; String sql = super.getFinder("find_message_by_history"); if (data.getMessageId() != null && !data.getMessageId().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_message_id"); parameters.add(data.getMessageId()); } if (data.getMessageBox() != null && !data.getMessageBox().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_message_box"); parameters.add(data.getMessageBox()); } if (data.getCpaId() != null && !data.getCpaId().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_cpa_id"); parameters.add(data.getCpaId()); } if (data.getService() != null && !data.getService().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_service"); parameters.add(data.getService()); } if (data.getAction() != null && !data.getAction().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_action"); parameters.add(data.getAction()); } if (data.getStatus() != null && !data.getStatus().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_status"); parameters.add(data.getStatus()); } if (data.getConvId() != null && !data.getConvId().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_conv_id"); parameters.add(data.getConvId()); } if (data.getPrimalMessageId() != null && !data.getPrimalMessageId().trim().equals("")) { sql += " AND " + getFilter("find_message_by_history_filter_primal_message_id"); parameters.add(data.getPrimalMessageId()); } sql += " " + getOrder("find_message_by_history_order"); parameters.add(new Integer(numberOfMessage)); parameters.add(new Integer(offset)); return executeQuery(sql, parameters.toArray()); }
/** * Find number of messages by different criteria. * * @param data The message data value object carrying query criteria. * @throws DAOException */ public int findNumberOfMessagesByHistory(MessageDVO data) throws DAOException { try { List parameters = new ArrayList(); String sql = super.getFinder("find_number_of_message_by_history"); if (data.getMessageId() != null && !data.getMessageId().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_message_id"); parameters.add(data.getMessageId()); } if (data.getMessageBox() != null && !data.getMessageBox().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_message_box"); parameters.add(data.getMessageBox()); } if (data.getCpaId() != null && !data.getCpaId().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_cpa_id"); parameters.add(data.getCpaId()); } if (data.getService() != null && !data.getService().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_service"); parameters.add(data.getService()); } if (data.getAction() != null && !data.getAction().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_action"); parameters.add(data.getAction()); } if (data.getStatus() != null && !data.getStatus().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_status"); parameters.add(data.getStatus()); } if (data.getConvId() != null && !data.getConvId().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_conv_id"); parameters.add(data.getConvId()); } if (data.getPrimalMessageId() != null && !data.getPrimalMessageId().trim().equals("")) { sql += " AND " + getFilter("find_number_of_message_by_history_filter_primal_message_id"); parameters.add(data.getPrimalMessageId()); } List queryResult = executeRawQuery(sql, parameters.toArray()); List resultEntry = (List) queryResult.get(0); return ((Number) resultEntry.get(0)).intValue(); } catch (Exception e) { throw new DAOException("Unable to find the number of messages by history", e); } }
// find the ref to message public boolean findRefToMessage(MessageDVO data) throws DAOException { List l = super.find( "find_ref_to_message", new Object[] {data.getRefToMessageId(), data.getMessageBox(), data.getMessageType()}); Iterator i = l.iterator(); if (i.hasNext()) { ((MessageDataSourceDVO) data).setData(((MessageDataSourceDVO) i.next()).getData()); return true; } return false; }
// find all the ordered messages by messagebox, cpa and status public List findOrderedMessagesByMessageBoxAndCpaAndStatus(MessageDVO data) throws DAOException { return super.find( "find_ordered_messages_by_message_box_and_cpa_and_status", new Object[] { data.getMessageBox(), data.getCpaId(), data.getService(), data.getAction(), data.getConvId(), data.getStatus() }); }
public int findMaxSequenceGroupByMessageBoxAndCpa(MessageDVO data) throws DAOException { List l = super.find( "find_max_sequence_group_by_message_box_and_cpa", new Object[] { data.getMessageBox(), data.getCpaId(), data.getService(), data.getAction(), data.getConvId() }); Iterator i = l.iterator(); if (i.hasNext()) { MessageDataSourceDVO resultData = (MessageDataSourceDVO) i.next(); return resultData.getSequenceGroup(); } return -1; }
public int findNumOfMessagesByMessageBoxAndCpaAndSequenceGroup(MessageDVO data) throws DAOException { try { List result = super.executeRawQuery( super.getFinder("find_num_of_messages_by_message_box_and_cpa_and_sequence_group"), new Object[] { data.getMessageBox(), data.getCpaId(), data.getService(), data.getAction(), data.getConvId(), new Integer(data.getSequenceGroup()) }); List resultEntry = (List) result.get(0); return ((Number) resultEntry.get(0)).intValue(); } catch (Exception e) { throw new DAOException("Unable to find the number of messages by history", e); } }
public boolean findOrderedMessageByMessageBoxAndCpaAndSequenceGroupAndSequenceNo(MessageDVO data) throws DAOException { List l = super.find( "find_ordered_message_by_message_box_and_cpa_and_sequence_group_and_sequence_no", new Object[] { data.getMessageBox(), data.getCpaId(), data.getService(), data.getAction(), data.getConvId(), new Integer(data.getSequenceGroup()), new Integer(data.getSequenceNo()) }); Iterator i = l.iterator(); if (i.hasNext()) { ((MessageDataSourceDVO) data).setData(((MessageDataSourceDVO) i.next()).getData()); return true; } return false; }