KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > openedit > store > products > RandomSortComparator


1 /*
2  * Created on Sep 22, 2005
3  */

4 package com.openedit.store.products;
5
6 import java.util.Random JavaDoc;
7
8 import org.apache.lucene.search.SortComparator;
9
10 public class RandomSortComparator extends SortComparator implements Comparable JavaDoc
11 {
12     protected Random JavaDoc fieldRandom;
13     
14     protected Comparable JavaDoc getComparable(String JavaDoc inField)
15     {
16         return this;
17     }
18
19     public int compareTo(Object JavaDoc arg0)
20     {
21         double d = getRandom().nextDouble();
22         //this is from 0 to 1
23
if ( d <= .3333333)
24         {
25             return -1;
26         }
27         else if ( d >= .6666666)
28         {
29             return 1;
30         }
31         else
32         {
33             return 0;
34         }
35     }
36
37     public Random JavaDoc getRandom()
38     {
39         if (fieldRandom == null)
40         {
41             fieldRandom = new Random JavaDoc();
42         }
43         return fieldRandom;
44     }
45
46     public void setRandom(Random JavaDoc inRandom)
47     {
48         fieldRandom = inRandom;
49     }
50
51 }
52
Popular Tags