/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.core.metadata.runtime; import org.eclipse.core.runtime.IPath; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature; import org.teiid.designer.core.index.IndexConstants; import org.teiid.designer.core.metamodel.aspect.MetamodelEntity; import org.teiid.designer.core.metamodel.aspect.sql.SqlColumnAspect; /** * FakeSqlColumnAspect */ public class FakeSqlColumnAspect implements SqlColumnAspect { public String name, fullName, nameInSource, datatypeName, runtimeType, datatypeUUID, format; public IPath path; public EObject datatype; public boolean selectable, updatable, autoIncrementable; public boolean caseSensitive, signed, currency, fixedLength, tranformationInputParameter; public String defaultValue; public Object minValue, maxValue, uuid, parentUuid; public int length, scale, precision, charOctetLength, radix, nullType, searchType, position, nullValues, distinctValues; @Override public int getCharOctetLength(EObject eObject) { return charOctetLength; } @Override public EObject getDatatype(EObject eObject) { return datatype; } @Override public String getDatatypeName(EObject eObject) { return datatypeName; } @Override public String getNativeType(EObject eObject) { return datatypeName; } @Override public String getRuntimeType(EObject eObject) { return runtimeType; } @Override public String getDatatypeObjectID(EObject eObject) {return datatypeUUID;} @Override public String getDefaultValue(EObject eObject) { return defaultValue; } @Override public int getLength(EObject eObject) { return length; } @Override public Object getMaxValue(EObject eObject) { return maxValue; } @Override public Object getMinValue(EObject eObject) { return minValue; } @Override public String getFormat(EObject eObject) { return format; } @Override public String getName(EObject eObject) { return name; } @Override public String getFullName(EObject eObject) { return fullName; } @Override public String getNameInSource(EObject eObject) { return nameInSource; } @Override public IPath getPath(EObject eObject) { return path; } @Override public Object getObjectID(EObject eObject) { return uuid; } @Override public int getPrecision(EObject eObject) { return precision; } @Override public int getPosition(EObject eObject) {return position;} @Override public int getScale(EObject eObject) { return scale; } @Override public int getRadix(EObject eObject) { return radix; } @Override public int getSearchType(EObject eObject) { return searchType; } @Override public int getDistinctValues(EObject eObject) { return distinctValues; } @Override public int getNullValues(EObject eObject) { return nullValues; } @Override public boolean isAutoIncrementable(EObject eObject) { return autoIncrementable; } @Override public boolean isCaseSensitive(EObject eObject) { return caseSensitive; } @Override public boolean isCurrency(EObject eObject) { return currency; } @Override public boolean isFixedLength(EObject eObject) { return fixedLength; } @Override public int getNullType(EObject eObject) { return nullType; } @Override public boolean isSelectable(EObject eObject) { return selectable; } @Override public boolean isSigned(EObject eObject) { return signed; } @Override public boolean isUpdatable(EObject eObject) { return updatable; } @Override public boolean isRecordType(char recordType) { return (recordType == IndexConstants.RECORD_TYPE.COLUMN ); } @Override public boolean isQueryable(EObject eObject) { return true; } @Override public String getID() { return null; } @Override public MetamodelEntity getMetamodelEntity() { return null; } @Override public Object getParentObjectID(EObject eObject) { return parentUuid; } @Override public void updateObject(EObject targetObject, EObject sourceObject) {} /** * @see org.teiid.designer.core.metamodel.aspect.sql.SqlColumnAspect#canSetDatatype() * @since 4.2 */ @Override public boolean canSetDatatype() { return true; } @Override public void setDatatype(EObject eObject, EObject newValue) { datatype = newValue; } /** * @see org.teiid.designer.core.metamodel.aspect.sql.SqlColumnAspect#canSetLength() * @since 4.2 */ @Override public boolean canSetLength() { return true; } @Override public void setLength(EObject eObject, int newValue) { length = newValue; } /** * @see org.teiid.designer.core.metamodel.aspect.sql.SqlColumnAspect#canSetNullType() * @since 4.2 */ @Override public boolean canSetNullType() { return true; } @Override public void setNullType(EObject eObject, int newValue) { nullType = newValue; } @Override public boolean isDatatypeFeature(EObject eObject, EStructuralFeature eFeature) { return false; } @Override public boolean isTranformationInputParameter(EObject eObject) { return tranformationInputParameter; } }