KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > roller > pojos > RefererComparator


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 package org.apache.roller.pojos;
19
20
21 import java.io.Serializable JavaDoc;
22 import java.util.Comparator JavaDoc;
23
24 /** Compares referers based on day hits and then alphabetical order */
25 public class RefererComparator implements Comparator JavaDoc, Serializable JavaDoc
26 {
27     static final long serialVersionUID = -1658901752434218888L;
28     
29     public int compare(Object JavaDoc val1, Object JavaDoc val2)
30     throws ClassCastException JavaDoc
31     {
32         RefererData r1 = (RefererData)val1;
33         RefererData r2 = (RefererData)val2;
34         int hits1 = r1.getDayHits().intValue();
35         int hits2 = r2.getDayHits().intValue();
36
37         if (hits1 > hits2)
38         {
39             return -1;
40         }
41         else if (hits1 < hits2)
42         {
43             return 1;
44         }
45
46         // if hits are the same, return
47
// results of String.compareTo()
48
return r1.getRefererUrl().compareTo(r2.getRefererUrl());
49     }
50 }
51
Popular Tags