01: package prefuse.data.expression;
02:
03: import prefuse.data.Schema;
04: import prefuse.data.Tuple;
05:
06: /**
07: * Expression instance that returns the value stored in a Tuple data field.
08: *
09: * @author <a href="http://jheer.org">jeffrey heer</a>
10: */
11: public class ColumnExpression extends AbstractExpression implements
12: Predicate {
13:
14: protected final String m_field;
15:
16: /**
17: * Create a new ColumnExpression.
18: * @param field the column / data field name to use
19: */
20: public ColumnExpression(String field) {
21: m_field = field;
22: }
23:
24: /**
25: * Get the column / data field name used by this expression.
26: * @return the column / data field name
27: */
28: public String getColumnName() {
29: return m_field;
30: }
31:
32: // ------------------------------------------------------------------------
33: // Expression Interface
34:
35: /**
36: * @see prefuse.data.expression.Expression#getType(prefuse.data.Schema)
37: */
38: public Class getType(Schema s) {
39: return s.getColumnType(m_field);
40: }
41:
42: /**
43: * @see prefuse.data.expression.Expression#get(prefuse.data.Tuple)
44: */
45: public Object get(Tuple t) {
46: return t.get(m_field);
47: }
48:
49: /**
50: * @see prefuse.data.expression.Expression#getInt(prefuse.data.Tuple)
51: */
52: public int getInt(Tuple t) {
53: return t.getInt(m_field);
54: }
55:
56: /**
57: * @see prefuse.data.expression.Expression#getLong(prefuse.data.Tuple)
58: */
59: public long getLong(Tuple t) {
60: return t.getLong(m_field);
61: }
62:
63: /**
64: * @see prefuse.data.expression.Expression#getFloat(prefuse.data.Tuple)
65: */
66: public float getFloat(Tuple t) {
67: return t.getFloat(m_field);
68: }
69:
70: /**
71: * @see prefuse.data.expression.Expression#getDouble(prefuse.data.Tuple)
72: */
73: public double getDouble(Tuple t) {
74: return t.getDouble(m_field);
75: }
76:
77: /**
78: * @see prefuse.data.expression.Expression#getBoolean(prefuse.data.Tuple)
79: */
80: public boolean getBoolean(Tuple t) {
81: return t.getBoolean(m_field);
82: }
83:
84: /**
85: * @see java.lang.Object#toString()
86: */
87: public String toString() {
88: return "[" + m_field + "]";
89: }
90:
91: } // end of class ColumnExpression
|