File Source: WeblogEntryWrapperComparator.java

         /* 
    P/P   *  Method: org.apache.roller.weblogger.pojos.WeblogEntryWrapperComparator__static_init
          */
     1  /*
     2  * Licensed to the Apache Software Foundation (ASF) under one or more
     3  *  contributor license agreements.  The ASF licenses this file to You
     4  * under the Apache License, Version 2.0 (the "License"); you may not
     5  * use this file except in compliance with the License.
     6  * You may obtain a copy of the License at
     7  *
     8  *     http://www.apache.org/licenses/LICENSE-2.0
     9  *
    10  * Unless required by applicable law or agreed to in writing, software
    11  * distributed under the License is distributed on an "AS IS" BASIS,
    12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  * See the License for the specific language governing permissions and
    14  * limitations under the License.  For additional information regarding
    15  * copyright in this work, please see the NOTICE file in the top level
    16  * directory of this distribution.
    17  */
    18  
    19  package org.apache.roller.weblogger.pojos;
    20  
    21  import java.io.Serializable;
    22  import java.util.Comparator;
    23  import org.apache.roller.weblogger.pojos.wrapper.WeblogEntryWrapper;
    24  
    25  /**
    26   * Sorts WeblogEntryData objects in reverse chronological order
    27   * (most recently published entries first).  If they happen to
    28   * have the same pubTime, then sort alphabetically by title.
    29   * 
    30   * @author lance.lavandowska
    31   */
         /* 
    P/P   *  Method: void org.apache.roller.weblogger.pojos.WeblogEntryWrapperComparator()
          */
    32  public class WeblogEntryWrapperComparator implements Comparator, Serializable
    33  {
    34      static final long serialVersionUID = -9067148992322255150L;
    35      
    36      public int compare(Object val1, Object val2)
    37      throws ClassCastException
    38      {
                 /* 
    P/P           *  Method: int compare(Object, Object)
                  * 
                  *  Preconditions:
                  *    val1 != null
                  *    val2 != null
                  * 
                  *  Presumptions:
                  *    org.apache.roller.weblogger.pojos.wrapper.WeblogEntryWrapper:getPubTime(...)@41 != null
                  *    org.apache.roller.weblogger.pojos.wrapper.WeblogEntryWrapper:getPubTime(...)@42 != null
                  *    org.apache.roller.weblogger.pojos.wrapper.WeblogEntryWrapper:getTitle(...)@55 != null
                  * 
                  *  Postconditions:
                  *    init'ed(return_value)
                  */
    39          WeblogEntryWrapper entry1 = (WeblogEntryWrapper)val1;
    40          WeblogEntryWrapper entry2 = (WeblogEntryWrapper)val2;
    41          long pubTime1 = entry1.getPubTime().getTime();
    42          long pubTime2 = entry2.getPubTime().getTime();
    43  
    44          if (pubTime1 > pubTime2)
    45          {
    46              return -1;
    47          }
    48          else if (pubTime1 < pubTime2)
    49          {
    50              return 1;
    51          }
    52  
    53          // if pubTimes are the same, return
    54          // results of String.compareTo() on Title
    55          return entry1.getTitle().compareTo(entry2.getTitle());
    56      }
    57  }








SofCheck Inspector Build Version : 2.18479
WeblogEntryWrapperComparator.java 2009-Jan-02 14:25:44
WeblogEntryWrapperComparator.class 2009-Sep-04 03:12:32