/** */ /** * Create on Feb 3, 2007 */ package com.jinfonet.loganalyzer.ui.viewers; import guitools.util.MiniSort; import java.sql.ResultSet; import java.util.Vector; import javax.swing.table.DefaultTableModel; /** */ /** * * @author gengwei.zheng * */ public class OperateDataTableModel extends CachingDataTableModel ... { private static final long serialVersionUID = 3044095515464606228L; private Vector dataTempVector = new Vector(); private boolean isDesc = false; private int index = 0; private int filteredLogs = 0; public OperateDataTableModel(ResultSet rs) ...{ super(rs); }// public void sort(int column, boolean isAsc) {// if( dataVector!= null )// {// beforeSort = (Vector) dataVector.clone(); sort(null, column, isAsc);// fireTableDataChanged();// } // }// public void undoSort() {// if( beforeSort.size() >0 )// {// dataVector = beforeSort;// fireTableDataChanged();// } // } public void filter() ...{ int count = getRowCount()-1; Vector filterV = new Vector(); for (int i = count; i >=0 ; i--) ...{ if (((Object[])dataVector.get(i))[0].toString().equalsIgnoreCase("true")) ...{ filterV.add(0, dataVector.get(i)); dataVector.remove(i); } } for (int n = 0; n < filterV.size() ; n++) dataVector.add(n, filterV.get(n)); filteredLogs = count - filterV.size() + 1; fireTableDataChanged(); } public void refetchData(ResultSet rs) ...{ super.refetchData(rs); fireTableDataChanged(); } public void deleteRows() ...{ int count = getRowCount() - 1; for (int i = count; i >= 0; i-- ) ...{ if (((Object[])dataVector.get(i))[0].toString().equalsIgnoreCase("true")) ...{ dataTempVector.add((Object[])dataVector.get(i)); dataVector.remove(i); } } fireTableDataChanged(); } public void deleteAllRows() ...{ dataTempVector = (Vector) dataVector.clone(); dataVector.clear(); fireTableDataChanged(); } public void refresh() ...{ for (int i = 0; i < dataTempVector.size(); i++) ...{ dataVector.add(dataTempVector.get(i)); } dataTempVector.clear(); fireTableDataChanged(); } public Vector getColumnNames() ...{ return columnNames; } public int getTotalLogs() ...{ return getRowCount(); } public int getFilteredLogs() ...{ return filteredLogs; }// public void sort(Object obj, int index, boolean isAsc) {// isDesc = !isAsc;// this.index = index;// Vector vector = new Vector(getRowCount());//// for (int i = 0; i < getRowCount(); i++) {// vector.add((Vector) (dataVector).elementAt(i));// }// while (getRowCount() > 0) {// removeRow(0);// }// vector = new MiniSort(vector, this).getResult();// if (vector != null) {// for (int i = 0; i < vector.size(); i++) {// addRow((Vector) vector.elementAt(i));// }// }// }// public boolean isExchangeSortOrder(Object obj1, Object obj2) {// String s1 = ((Vector) obj1).elementAt(index) == null ? ""// : ((Vector) obj1).elementAt(index).toString();// String s2 = ((Vector) obj2).elementAt(index) == null ? ""// : ((Vector) obj2).elementAt(index).toString();// return isDesc ? s1.compareTo(s2) > 0 : s1.compareTo(s2) < 0;//// }//// public boolean isLargerOrEqual(Object obj1, Object obj2) {// return false;// }//// public boolean isLessOrEqual(Object obj1, Object obj2) {// return false;// }}