rendered paste body/** * */package net.infomobile.condominio.model.comparator;import java.util.Comparator;import java.util.Date;import net.infomobile.condominio.model.businessobject.ContaCredito;import net.infomobile.condominio.model.businessobject.ContaPagar;/** * @author esouza * */public class DataLancamentoComparator implements Comparator { /* (non-Javadoc) * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object) */ public int compare(Object arg0, Object arg1) { Date data1 = null; Date data2 = null; if (arg0 instanceof ContaPagar) { ContaPagar contaPagar = (ContaPagar) arg0; data1 = contaPagar.getDataLancamento(); } else if (arg0 instanceof ContaCredito) { ContaCredito contaCredito = (ContaCredito) arg0; data1 = contaCredito.getDataLancamento(); } else { throw new ClassCastException(); } if (arg1 instanceof ContaPagar) { ContaPagar contaPagar = (ContaPagar) arg1; data2 = contaPagar.getDataLancamento(); } else if (arg1 instanceof ContaCredito) { ContaCredito contaCredito = (ContaCredito) arg1; data2 = contaCredito.getDataLancamento(); } else { throw new ClassCastException(); } if( data1.equals(data2) ) { return 0; } else { if( data1.before(data2) ) { return -1; } if( data1.after(data2)) { return 1; } } return -100; }}