047f59e461
git-svn-id: http://google-refine.googlecode.com/svn/trunk@27 7d457c2a-affb-35e4-300a-418c747d4874
28 lines
650 B
Java
28 lines
650 B
Java
package com.metaweb.gridworks.expr;
|
|
|
|
import java.util.Properties;
|
|
|
|
public class FieldAccessorExpr implements Evaluable {
|
|
final protected Evaluable _inner;
|
|
final protected String _fieldName;
|
|
|
|
public FieldAccessorExpr(Evaluable inner, String fieldName) {
|
|
_inner = inner;
|
|
_fieldName = fieldName;
|
|
}
|
|
|
|
@Override
|
|
public Object evaluate(Properties bindings) {
|
|
Object o = _inner.evaluate(bindings);
|
|
if (o != null && o instanceof HasFields) {
|
|
return ((HasFields) o).getField(_fieldName, bindings);
|
|
}
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return _inner.toString() + "." + _fieldName;
|
|
}
|
|
}
|