Java tutorial
/****************************************************************************** * * * Copyright 2017 Steven Foskett, Jimmy Ho, Ryan Porterfield * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the "Software"), * * to deal in the Software without restriction, including without limitation * * the rights to use, copy, modify, merge, publish, distribute, sublicense, * * and/or sell copies of the Software, and to permit persons to whom the * * Software is furnished to do so, subject to the following conditions: * * * * The above copyright notice and this permission notice shall be included in * * all copies or substantial portions of the Software. * * * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE* * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * * DEALINGS IN THE SOFTWARE. * * * ******************************************************************************/ package com.einzig.ipst2.sort; import com.einzig.ipst2.portal.PortalResponded; import com.einzig.ipst2.portal.PortalSubmission; import org.joda.time.LocalDate; import java.util.Comparator; /** * @author Ryan Porterfield * @since 2017-06-01 */ public class DateComparator implements Comparator<PortalSubmission> { @Override public int compare(PortalSubmission p0, PortalSubmission p1) { LocalDate recent0, recent1; if (p0 instanceof PortalResponded) recent0 = ((PortalResponded) p0).getDateResponded(); else recent0 = p0.getDateSubmitted(); if (p1 instanceof PortalResponded) recent1 = ((PortalResponded) p1).getDateResponded(); else recent1 = p0.getDateSubmitted(); return recent0.compareTo(recent1); } }