/*
* $Id: ContentItemBeanComparator.java,v 1.5 2007/10/04 13:32:17 valdas Exp $
* Created on 15.2.2005
*
* Copyright (C) 2005 Idega Software hf. All Rights Reserved.
*
* This software is the proprietary information of Idega hf.
* Use is subject to license terms.
*/
package com.idega.content.bean;
import java.util.Comparator;
import java.util.Date;
/**
*
* Last modified: $Date: 2007/10/04 13:32:17 $ by $Author: valdas $
*
* @author <a href="mailto:gummi@idega.com">Gudmundur Agust Saemundsson</a>
* @version $Revision: 1.5 $
*/
public class ContentItemBeanComparator implements Comparator<ContentItemBean> {
private boolean reverse = false;
/**
*
*/
public ContentItemBeanComparator() {
super();
}
public void setReverseOrder(boolean value){
this.reverse = value;
}
/* (non-Javadoc)
* @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
*/
public int compare(ContentItemBean item1, ContentItemBean item2) {
int returner = 0;
Date item1Date = item1.getPublishedDate() == null ? item1.getCreationDate() : item1.getPublishedDate();
Date item2Date = item2.getPublishedDate() == null ? item2.getCreationDate() : item2.getPublishedDate();
if (item1Date == null && item2Date == null) {
returner = 0;
}
else if (item2Date == null) {
returner = 1;
}
else if (item1Date == null) {
returner = -1;
}
else {
returner = item1Date.compareTo(item2Date);
}
return returner*((this.reverse)?-1:1);
}
}