01: /*
02:
03: This software is OSI Certified Open Source Software.
04: OSI Certified is a certification mark of the Open Source Initiative.
05:
06: The license (Mozilla version 1.0) can be read at the MMBase site.
07: See http://www.MMBase.org/license
08:
09: */
10: package org.mmbase.storage.search;
11:
12: import java.util.*;
13:
14: /**
15: * A constraint that restricts the value of a stepfield to be in a specified list of values.
16: * <p>
17: * This corresponds to the use of "in (...)" in SQL SELECT-syntax.
18: *
19: * @author Rob van Maris
20: * @version $Id: FieldValueInConstraint.java,v 1.7 2007/02/11 19:21:12 nklasens Exp $
21: * @since MMBase-1.7
22: */
23: public interface FieldValueInConstraint extends FieldConstraint {
24: /**
25: * Gets the list of values that is specified for this constraint.
26: */
27: SortedSet<Object> getValues();
28:
29: /**
30: * Returns a string representation of this FieldValueInConstraint.
31: * The string representation has the form
32: * "FieldValueInConstraint(inverse:<:inverse>, field:<field>,
33: * casesensitive:<casesensitive>, values:<values>)"
34: * where
35: * <ul>
36: * <li><em><inverse></em>is the value returned by
37: * {@link #isInverse isInverse()}
38: * <li><em><field></em> is the field alias returned by
39: * <code>FieldConstraint#getField().getAlias()</code>
40: * <li><em><casesensitive></em> is the value returned by
41: * {@link FieldConstraint#isCaseSensitive isCaseSensitive()}
42: * <li><em><values></em> is the values returned by
43: * {@link #getValues getValues()}
44: * </ul>
45: *
46: * @return A string representation of this FieldValueInConstraint.
47: */
48: public String toString();
49:
50: }
|