View Javadoc

1   package uba.db.ar;
2   
3   import java.util.HashMap;
4   
5   import uba.db.sql.language.ColumnName;
6   import uba.db.sql.language.EvaluationContext;
7   import uba.db.sql.language.QualifiedColumnName;
8   
9   /***
10   * @version $Revision: 1.3 $
11   */
12  public class ExecutionContext implements EvaluationContext {
13  
14  	private Tupla tupla;
15  
16  	private HashMap indexes;
17  
18  	public ExecutionContext(Tupla t, HashMap indexesToUse) {
19  		tupla = t;
20  		indexes = indexesToUse;
21  	}
22  
23  	/*
24  	 * @see uba.db.sql.language.EvaluationContext#valueOf(uba.db.sql.language.ColumnName)
25  	 */
26  	public Object valueOf(ColumnName columnName) {
27  		int index = tupla.tuplaDefinition().indexOf(columnName.toString());
28  		Object value = tupla.get(index);
29  		return value;
30  	}
31  
32  	/*
33  	 * @see uba.db.sql.language.EvaluationContext#valueOf(uba.db.sql.language.QualifiedColumnName)
34  	 */
35  	public Object valueOf(QualifiedColumnName name) {
36  		int index = ((Integer) indexes.get(name.tableName().toString()
37  				+ name.columnName().toString())).intValue();
38  		Object value = tupla.get(index);
39  		return value;
40  	}
41  
42  }