KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mmbase > storage > search > StepField


1 /*
2
3 This software is OSI Certified Open Source Software.
4 OSI Certified is a certification mark of the Open Source Initiative.
5
6 The license (Mozilla version 1.0) can be read at the MMBase site.
7 See http://www.MMBase.org/license
8
9 */

10 package org.mmbase.storage.search;
11
12 /**
13  * A stepfield refers to a field in a step.
14  * Each stepfield has an unique alias to identify it.
15  * <p>
16  * This corresponds to a prefixed fieldname in a SQL SELECT-syntax.
17  *
18  * @author Rob van Maris
19  * @version $Id: StepField.java,v 1.5 2005/07/08 12:23:45 pierre Exp $
20  * @since MMBase-1.7
21  */

22 public interface StepField {
23     /**
24      * Gets the name of the associated field (without prefix).
25      * <p>
26      * This corresponds to the fieldname in SQL SELECT-syntax.
27      */

28     String JavaDoc getFieldName();
29
30     /**
31      * Gets the alias for the associated field.
32      * <p>
33      * This corresponds to the field alias in SQL SELECT-syntax.
34      */

35     String JavaDoc getAlias();
36
37     /**
38      * Gets the step associated with this fieldstep.
39      */

40     Step getStep();
41
42     /**
43      * Gets the type of the associated field.
44      * This is one of the values defined in {@link org.mmbase.bridge.Field Field}.
45      */

46     int getType();
47
48     /**
49      * Compares this stepfield to the specified object. The result is
50      * <code>true</code> if and only if the argument is a non-null
51      * StepField object associated with the same field, using the same alias.
52      *
53      * @param obj The object to compare with.
54      * @return <code>true</code> if the objects are equal,
55      * <code>false</code> otherwise.
56      */

57     public boolean equals(Object JavaDoc obj);
58
59     // javadoc is inherited
60
public int hashCode();
61
62     /**
63      * Returns a string representation of this StepField.
64      * The string representation has the form
65      * "StepField(step:&lt;step&gt;, fieldname:&lt;fieldname&gt;, alias:&lt;alias&gt;)"
66      * where
67      * <ul>
68      * <li><em>&lt;step&gt;</em> is the step alias returned by
69      * <code>getStep().getAlias()</code> or,
70      * when the step alias is <code>null</code>, the step tablename
71      * returned by <code>getStep().getTableName()</code>.
72      * <li><em>&lt;fieldname&gt;</em> is the fieldname returned by
73      * {@link #getFieldName getFieldName()}
74      * <li><em>&lt;alias&gt;</em> is the alias returned by {@link #getAlias getAlias()}
75      * </ul>
76      *
77      * @return A string representation of this StepField.
78      */

79     public String JavaDoc toString();
80
81     /** @link dependency
82      * @clientRole **/

83     /*# Step lnkStep;*/
84 }
85
Popular Tags