KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > htmlparser > util > sort > Sortable


1 // HTMLParser Library $Name: v1_5_20050313 $ - A java-based parser for HTML
2
// http://sourceforge.org/projects/htmlparser
3
// Copyright (C) 2004 Derrick Oswald
4
//
5
// Revision Control Information
6
//
7
// $Source: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/util/sort/Sortable.java,v $
8
// $Author: derrickoswald $
9
// $Date: 2004/01/02 16:24:58 $
10
// $Revision: 1.11 $
11
//
12
// This library is free software; you can redistribute it and/or
13
// modify it under the terms of the GNU Lesser General Public
14
// License as published by the Free Software Foundation; either
15
// version 2.1 of the License, or (at your option) any later version.
16
//
17
// This library is distributed in the hope that it will be useful,
18
// but WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
// Lesser General Public License for more details.
21
//
22
// You should have received a copy of the GNU Lesser General Public
23
// License along with this library; if not, write to the Free Software
24
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25
//
26

27 package org.htmlparser.util.sort;
28
29 /**
30  * Provides a mechanism to abstract the sort process.
31  * Classes implementing this interface are collections of Ordered objects
32  * that are to be sorted by the Sort class and are
33  * not necessarily Vectors or Arrays of Ordered objects.
34  * @see Sort
35  */

36 public interface Sortable
37 {
38     /**
39      * Returns the first index of the Sortable.
40      * @return The index of the first element.
41      */

42     public int first ();
43
44     /**
45      * Returns the last index of the Sortable.
46      * @return The index of the last element.
47      * If this were an array object this would be (object.length - 1).
48      */

49     public int last ();
50
51     /**
52      * Fetch the object at the given index.
53      * @param index The item number to get.
54      * @param reuse If this argument is not null, it is an object
55      * acquired from a previous fetch that is no longer needed and
56      * may be returned as the result if it makes mores sense to alter
57      * and return it than to fetch or create a new element. That is, the
58      * reuse object is garbage and may be used to avoid allocating a new
59      * object if that would normally be the strategy.
60      * @return The Ordered object at that index.
61      */

62     public Ordered fetch (int index, Ordered reuse);
63
64     /**
65      * Swaps the elements at the given indicies.
66      * @param i One index.
67      * @param j The other index.
68      */

69     public void swap (int i, int j);
70 }
71
Popular Tags