KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jfree > data > KeyedValues


1 /* ===========================================================
2  * JFreeChart : a free chart library for the Java(tm) platform
3  * ===========================================================
4  *
5  * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors.
6  *
7  * Project Info: http://www.jfree.org/jfreechart/index.html
8  *
9  * This library is free software; you can redistribute it and/or modify it
10  * under the terms of the GNU Lesser General Public License as published by
11  * the Free Software Foundation; either version 2.1 of the License, or
12  * (at your option) any later version.
13  *
14  * This library is distributed in the hope that it will be useful, but
15  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
17  * License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public License
20  * along with this library; if not, write to the Free Software Foundation,
21  * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
22  *
23  * [Java is a trademark or registered trademark of Sun Microsystems, Inc.
24  * in the United States and other countries.]
25  *
26  * ----------------
27  * KeyedValues.java
28  * ----------------
29  * (C) Copyright 2002-2005, by Object Refinery Limited.
30  *
31  * Original Author: David Gilbert (for Object Refinery Limited);
32  * Contributor(s): -;
33  *
34  * $Id: KeyedValues.java,v 1.3 2005/03/28 19:40:26 mungady Exp $
35  *
36  * Changes:
37  * --------
38  * 23-Oct-2002 : Version 1 (DG);
39  * 12-Jan-2005 : Updated Javadocs to specify new behaviour when key
40  * is not recognised (DG);
41  *
42  */

43
44 package org.jfree.data;
45
46 import java.util.List JavaDoc;
47
48 /**
49  * An ordered list of (key, value) items.
50  *
51  * @see Values
52  * @see DefaultKeyedValues
53  */

54 public interface KeyedValues extends Values {
55
56     /**
57      * Returns the key associated with an item (value).
58      *
59      * @param index the item index (zero-based).
60      *
61      * @return The key.
62      *
63      * @throws IndexOutOfBoundsException if <code>index</code> is out of bounds.
64      */

65     public Comparable JavaDoc getKey(int index);
66
67     /**
68      * Returns the index for a given key.
69      *
70      * @param key the key.
71      *
72      * @return The index, or <code>-1</code> if the key is unrecognised.
73      */

74     public int getIndex(Comparable JavaDoc key);
75
76     /**
77      * Returns the keys for the values in the collection. Note that you can
78      * access the values in this collection by key or by index. For this
79      * reason, the key order is important - this method should return the keys
80      * in order. The returned list may be unmodifiable.
81      *
82      * @return The keys (never <code>null</code>).
83      */

84     public List JavaDoc getKeys();
85
86     /**
87      * Returns the value for a given key.
88      *
89      * @param key the key.
90      *
91      * @return The value (possibly <code>null</code>).
92      *
93      * @throws UnknownKeyException if the key is not recognised.
94      */

95     public Number JavaDoc getValue(Comparable JavaDoc key);
96
97 }
98
Popular Tags