package org.safehaus.penrose.source; import org.safehaus.penrose.mapping.Expression; /** * @author Endi S. Dewata */ public class Field implements Cloneable { private Source source; private FieldConfig fieldConfig; public Field(Source source, FieldConfig fieldConfig) { this.source = source; this.fieldConfig = fieldConfig; } public FieldConfig getFieldConfig() { return fieldConfig; } public void setFieldConfig(FieldConfig fieldConfig) { this.fieldConfig = fieldConfig; } public String getName() { return fieldConfig.getName(); } public boolean isPrimaryKey() { return fieldConfig.isPrimaryKey(); } public boolean isIndex() { return fieldConfig.isIndex(); } public String getOriginalName() { return fieldConfig.getOriginalName(); } public String getType() { return fieldConfig.getType(); } public String getCastType() { return fieldConfig.getCastType(); } public boolean isCaseSensitive() { return fieldConfig.isCaseSensitive(); } public int getLength() { return fieldConfig.getLength(); } public int getDefaultLength() { return fieldConfig.getDefaultLength(); } public Object getConstant() { return fieldConfig.getConstant(); } public String getVariable() { return fieldConfig.getVariable(); } public void setVariable(String variable) { fieldConfig.setVariable(variable); } public Expression getExpression() { return fieldConfig.getExpression(); } public Object clone() throws CloneNotSupportedException { Field field = (Field)super.clone(); field.fieldConfig = (FieldConfig)fieldConfig.clone(); return field; } public Source getSource() { return source; } public void setSource(Source source) { this.source = source; } public boolean isText() { return fieldConfig.isText(); } public String toString() { return source.getName()+"."+fieldConfig.getName(); } }