/* * 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.metamodels.relational.impl; import java.util.Collection; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.util.InternalEList; import org.teiid.designer.metamodels.relational.AccessPattern; import org.teiid.designer.metamodels.relational.Column; import org.teiid.designer.metamodels.relational.ColumnSet; import org.teiid.designer.metamodels.relational.ForeignKey; import org.teiid.designer.metamodels.relational.Index; import org.teiid.designer.metamodels.relational.NullableType; import org.teiid.designer.metamodels.relational.RelationalPackage; import org.teiid.designer.metamodels.relational.SearchabilityType; import org.teiid.designer.metamodels.relational.UniqueKey; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Column</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * <ul> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getNativeType <em>Native Type</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getLength <em>Length</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isFixedLength <em>Fixed Length</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getPrecision <em>Precision</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getScale <em>Scale</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getNullable <em>Nullable</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isAutoIncremented <em>Auto Incremented</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getDefaultValue <em>Default Value</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getMinimumValue <em>Minimum Value</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getMaximumValue <em>Maximum Value</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getFormat <em>Format</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getCharacterSetName <em>Character Set Name</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getCollationName <em>Collation Name</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isSelectable <em>Selectable</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isUpdateable <em>Updateable</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isCaseSensitive <em>Case Sensitive</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getSearchability <em>Searchability</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isCurrency <em>Currency</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getRadix <em>Radix</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#isSigned <em>Signed</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getDistinctValueCount <em>Distinct Value Count</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getNullValueCount <em>Null Value Count</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getUniqueKeys <em>Unique Keys</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getIndexes <em>Indexes</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getForeignKeys <em>Foreign Keys</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getAccessPatterns <em>Access Patterns</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getOwner <em>Owner</em>}</li> * <li>{@link org.teiid.designer.metamodels.relational.impl.ColumnImpl#getType <em>Type</em>}</li> * </ul> * </p> * * @generated * * @since 8.0 */ public class ColumnImpl extends RelationalEntityImpl implements Column { /** * The default value of the '{@link #getNativeType() <em>Native Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNativeType() * @generated * @ordered */ protected static final String NATIVE_TYPE_EDEFAULT = null; /** * The cached value of the '{@link #getNativeType() <em>Native Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNativeType() * @generated * @ordered */ protected String nativeType = NATIVE_TYPE_EDEFAULT; /** * This is true if the Native Type attribute has been set. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ protected boolean nativeTypeESet = false; /** * The default value of the '{@link #getLength() <em>Length</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getLength() * @generated * @ordered */ protected static final int LENGTH_EDEFAULT = 0; /** * The cached value of the '{@link #getLength() <em>Length</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getLength() * @generated * @ordered */ protected int length = LENGTH_EDEFAULT; /** * The default value of the '{@link #isFixedLength() <em>Fixed Length</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isFixedLength() * @generated * @ordered */ protected static final boolean FIXED_LENGTH_EDEFAULT = false; /** * The cached value of the '{@link #isFixedLength() <em>Fixed Length</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isFixedLength() * @generated * @ordered */ protected boolean fixedLength = FIXED_LENGTH_EDEFAULT; /** * The default value of the '{@link #getPrecision() <em>Precision</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getPrecision() * @generated * @ordered */ protected static final int PRECISION_EDEFAULT = 0; /** * The cached value of the '{@link #getPrecision() <em>Precision</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getPrecision() * @generated * @ordered */ protected int precision = PRECISION_EDEFAULT; /** * The default value of the '{@link #getScale() <em>Scale</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getScale() * @generated * @ordered */ protected static final int SCALE_EDEFAULT = 0; /** * The cached value of the '{@link #getScale() <em>Scale</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getScale() * @generated * @ordered */ protected int scale = SCALE_EDEFAULT; /** * The default value of the '{@link #getNullable() <em>Nullable</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNullable() * @generated * @ordered */ protected static final NullableType NULLABLE_EDEFAULT = NullableType.NULLABLE_LITERAL; /** * The cached value of the '{@link #getNullable() <em>Nullable</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNullable() * @generated * @ordered */ protected NullableType nullable = NULLABLE_EDEFAULT; /** * The default value of the '{@link #isAutoIncremented() <em>Auto Incremented</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isAutoIncremented() * @generated * @ordered */ protected static final boolean AUTO_INCREMENTED_EDEFAULT = false; /** * The cached value of the '{@link #isAutoIncremented() <em>Auto Incremented</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isAutoIncremented() * @generated * @ordered */ protected boolean autoIncremented = AUTO_INCREMENTED_EDEFAULT; /** * The default value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDefaultValue() * @generated * @ordered */ protected static final String DEFAULT_VALUE_EDEFAULT = null; /** * The cached value of the '{@link #getDefaultValue() <em>Default Value</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDefaultValue() * @generated * @ordered */ protected String defaultValue = DEFAULT_VALUE_EDEFAULT; /** * The default value of the '{@link #getMinimumValue() <em>Minimum Value</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getMinimumValue() * @generated * @ordered */ protected static final String MINIMUM_VALUE_EDEFAULT = null; /** * The cached value of the '{@link #getMinimumValue() <em>Minimum Value</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getMinimumValue() * @generated * @ordered */ protected String minimumValue = MINIMUM_VALUE_EDEFAULT; /** * The default value of the '{@link #getMaximumValue() <em>Maximum Value</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getMaximumValue() * @generated * @ordered */ protected static final String MAXIMUM_VALUE_EDEFAULT = null; /** * The cached value of the '{@link #getMaximumValue() <em>Maximum Value</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getMaximumValue() * @generated * @ordered */ protected String maximumValue = MAXIMUM_VALUE_EDEFAULT; /** * The default value of the '{@link #getFormat() <em>Format</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFormat() * @generated * @ordered */ protected static final String FORMAT_EDEFAULT = null; /** * The cached value of the '{@link #getFormat() <em>Format</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getFormat() * @generated * @ordered */ protected String format = FORMAT_EDEFAULT; /** * The default value of the '{@link #getCharacterSetName() <em>Character Set Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getCharacterSetName() * @generated * @ordered */ protected static final String CHARACTER_SET_NAME_EDEFAULT = null; /** * The cached value of the '{@link #getCharacterSetName() <em>Character Set Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getCharacterSetName() * @generated * @ordered */ protected String characterSetName = CHARACTER_SET_NAME_EDEFAULT; /** * The default value of the '{@link #getCollationName() <em>Collation Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getCollationName() * @generated * @ordered */ protected static final String COLLATION_NAME_EDEFAULT = null; /** * The cached value of the '{@link #getCollationName() <em>Collation Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getCollationName() * @generated * @ordered */ protected String collationName = COLLATION_NAME_EDEFAULT; /** * The default value of the '{@link #isSelectable() <em>Selectable</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isSelectable() * @generated * @ordered */ protected static final boolean SELECTABLE_EDEFAULT = true; /** * The cached value of the '{@link #isSelectable() <em>Selectable</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isSelectable() * @generated * @ordered */ protected boolean selectable = SELECTABLE_EDEFAULT; /** * The default value of the '{@link #isUpdateable() <em>Updateable</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isUpdateable() * @generated * @ordered */ protected static final boolean UPDATEABLE_EDEFAULT = true; /** * The cached value of the '{@link #isUpdateable() <em>Updateable</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isUpdateable() * @generated * @ordered */ protected boolean updateable = UPDATEABLE_EDEFAULT; /** * The default value of the '{@link #isCaseSensitive() <em>Case Sensitive</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isCaseSensitive() * @generated * @ordered */ protected static final boolean CASE_SENSITIVE_EDEFAULT = true; /** * The cached value of the '{@link #isCaseSensitive() <em>Case Sensitive</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isCaseSensitive() * @generated * @ordered */ protected boolean caseSensitive = CASE_SENSITIVE_EDEFAULT; /** * The default value of the '{@link #getSearchability() <em>Searchability</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getSearchability() * @generated * @ordered */ protected static final SearchabilityType SEARCHABILITY_EDEFAULT = SearchabilityType.SEARCHABLE_LITERAL; /** * The cached value of the '{@link #getSearchability() <em>Searchability</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getSearchability() * @generated * @ordered */ protected SearchabilityType searchability = SEARCHABILITY_EDEFAULT; /** * The default value of the '{@link #isCurrency() <em>Currency</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isCurrency() * @generated * @ordered */ protected static final boolean CURRENCY_EDEFAULT = false; /** * The cached value of the '{@link #isCurrency() <em>Currency</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isCurrency() * @generated * @ordered */ protected boolean currency = CURRENCY_EDEFAULT; /** * The default value of the '{@link #getRadix() <em>Radix</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getRadix() * @generated * @ordered */ protected static final int RADIX_EDEFAULT = 10; /** * The cached value of the '{@link #getRadix() <em>Radix</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getRadix() * @generated * @ordered */ protected int radix = RADIX_EDEFAULT; /** * The default value of the '{@link #isSigned() <em>Signed</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isSigned() * @generated * @ordered */ protected static final boolean SIGNED_EDEFAULT = true; /** * The cached value of the '{@link #isSigned() <em>Signed</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #isSigned() * @generated * @ordered */ protected boolean signed = SIGNED_EDEFAULT; /** * The default value of the '{@link #getDistinctValueCount() <em>Distinct Value Count</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDistinctValueCount() * @generated * @ordered */ protected static final int DISTINCT_VALUE_COUNT_EDEFAULT = -1; /** * The cached value of the '{@link #getDistinctValueCount() <em>Distinct Value Count</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getDistinctValueCount() * @generated * @ordered */ protected int distinctValueCount = DISTINCT_VALUE_COUNT_EDEFAULT; /** * The default value of the '{@link #getNullValueCount() <em>Null Value Count</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNullValueCount() * @generated * @ordered */ protected static final int NULL_VALUE_COUNT_EDEFAULT = -1; /** * The cached value of the '{@link #getNullValueCount() <em>Null Value Count</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getNullValueCount() * @generated * @ordered */ protected int nullValueCount = NULL_VALUE_COUNT_EDEFAULT; /** * The cached value of the '{@link #getUniqueKeys() <em>Unique Keys</em>}' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getUniqueKeys() * @generated * @ordered */ protected EList uniqueKeys = null; /** * The cached value of the '{@link #getIndexes() <em>Indexes</em>}' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getIndexes() * @generated * @ordered */ protected EList indexes = null; /** * The cached value of the '{@link #getForeignKeys() <em>Foreign Keys</em>}' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getForeignKeys() * @generated * @ordered */ protected EList foreignKeys = null; /** * The cached value of the '{@link #getAccessPatterns() <em>Access Patterns</em>}' reference list. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getAccessPatterns() * @generated * @ordered */ protected EList accessPatterns = null; /** * The cached value of the '{@link #getType() <em>Type</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #getType() * @generated * @ordered */ protected EObject type = null; /** * This is true if the Type reference has been set. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated * @ordered */ protected boolean typeESet = false; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected ColumnImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return RelationalPackage.eINSTANCE.getColumn(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getNativeType() { return nativeType; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setNativeType(String newNativeType) { String oldNativeType = nativeType; nativeType = newNativeType; boolean oldNativeTypeESet = nativeTypeESet; nativeTypeESet = true; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__NATIVE_TYPE, oldNativeType, nativeType, !oldNativeTypeESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void unsetNativeType() { String oldNativeType = nativeType; boolean oldNativeTypeESet = nativeTypeESet; nativeType = NATIVE_TYPE_EDEFAULT; nativeTypeESet = false; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.UNSET, RelationalPackage.COLUMN__NATIVE_TYPE, oldNativeType, NATIVE_TYPE_EDEFAULT, oldNativeTypeESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isSetNativeType() { return nativeTypeESet; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int getLength() { return length; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setLength(int newLength) { int oldLength = length; length = newLength; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__LENGTH, oldLength, length)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isFixedLength() { return fixedLength; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setFixedLength(boolean newFixedLength) { boolean oldFixedLength = fixedLength; fixedLength = newFixedLength; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__FIXED_LENGTH, oldFixedLength, fixedLength)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int getPrecision() { return precision; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setPrecision(int newPrecision) { int oldPrecision = precision; precision = newPrecision; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__PRECISION, oldPrecision, precision)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int getScale() { return scale; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setScale(int newScale) { int oldScale = scale; scale = newScale; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__SCALE, oldScale, scale)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public NullableType getNullable() { return nullable; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setNullable(NullableType newNullable) { NullableType oldNullable = nullable; nullable = newNullable == null ? NULLABLE_EDEFAULT : newNullable; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__NULLABLE, oldNullable, nullable)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isAutoIncremented() { return autoIncremented; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setAutoIncremented(boolean newAutoIncremented) { boolean oldAutoIncremented = autoIncremented; autoIncremented = newAutoIncremented; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__AUTO_INCREMENTED, oldAutoIncremented, autoIncremented)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getDefaultValue() { return defaultValue; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setDefaultValue(String newDefaultValue) { String oldDefaultValue = defaultValue; defaultValue = newDefaultValue; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__DEFAULT_VALUE, oldDefaultValue, defaultValue)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getMinimumValue() { return minimumValue; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setMinimumValue(String newMinimumValue) { String oldMinimumValue = minimumValue; minimumValue = newMinimumValue; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__MINIMUM_VALUE, oldMinimumValue, minimumValue)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getMaximumValue() { return maximumValue; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setMaximumValue(String newMaximumValue) { String oldMaximumValue = maximumValue; maximumValue = newMaximumValue; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__MAXIMUM_VALUE, oldMaximumValue, maximumValue)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getFormat() { return format; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setFormat(String newFormat) { String oldFormat = format; format = newFormat; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__FORMAT, oldFormat, format)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getCharacterSetName() { return characterSetName; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setCharacterSetName(String newCharacterSetName) { String oldCharacterSetName = characterSetName; characterSetName = newCharacterSetName; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__CHARACTER_SET_NAME, oldCharacterSetName, characterSetName)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String getCollationName() { return collationName; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setCollationName(String newCollationName) { String oldCollationName = collationName; collationName = newCollationName; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__COLLATION_NAME, oldCollationName, collationName)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isSelectable() { return selectable; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setSelectable(boolean newSelectable) { boolean oldSelectable = selectable; selectable = newSelectable; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__SELECTABLE, oldSelectable, selectable)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isUpdateable() { return updateable; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setUpdateable(boolean newUpdateable) { boolean oldUpdateable = updateable; updateable = newUpdateable; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__UPDATEABLE, oldUpdateable, updateable)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isCaseSensitive() { return caseSensitive; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setCaseSensitive(boolean newCaseSensitive) { boolean oldCaseSensitive = caseSensitive; caseSensitive = newCaseSensitive; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__CASE_SENSITIVE, oldCaseSensitive, caseSensitive)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public SearchabilityType getSearchability() { return searchability; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setSearchability(SearchabilityType newSearchability) { SearchabilityType oldSearchability = searchability; searchability = newSearchability == null ? SEARCHABILITY_EDEFAULT : newSearchability; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__SEARCHABILITY, oldSearchability, searchability)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isCurrency() { return currency; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setCurrency(boolean newCurrency) { boolean oldCurrency = currency; currency = newCurrency; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__CURRENCY, oldCurrency, currency)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int getRadix() { return radix; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setRadix(int newRadix) { int oldRadix = radix; radix = newRadix; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__RADIX, oldRadix, radix)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isSigned() { return signed; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setSigned(boolean newSigned) { boolean oldSigned = signed; signed = newSigned; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__SIGNED, oldSigned, signed)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int getDistinctValueCount() { return distinctValueCount; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setDistinctValueCount(int newDistinctValueCount) { int oldDistinctValueCount = distinctValueCount; distinctValueCount = newDistinctValueCount; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__DISTINCT_VALUE_COUNT, oldDistinctValueCount, distinctValueCount)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int getNullValueCount() { return nullValueCount; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setNullValueCount(int newNullValueCount) { int oldNullValueCount = nullValueCount; nullValueCount = newNullValueCount; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__NULL_VALUE_COUNT, oldNullValueCount, nullValueCount)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EList getUniqueKeys() { if (uniqueKeys == null) { uniqueKeys = new EObjectWithInverseResolvingEList.ManyInverse(UniqueKey.class, this, RelationalPackage.COLUMN__UNIQUE_KEYS, RelationalPackage.UNIQUE_KEY__COLUMNS); } return uniqueKeys; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EList getIndexes() { if (indexes == null) { indexes = new EObjectWithInverseResolvingEList.ManyInverse(Index.class, this, RelationalPackage.COLUMN__INDEXES, RelationalPackage.INDEX__COLUMNS); } return indexes; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EList getForeignKeys() { if (foreignKeys == null) { foreignKeys = new EObjectWithInverseResolvingEList.ManyInverse(ForeignKey.class, this, RelationalPackage.COLUMN__FOREIGN_KEYS, RelationalPackage.FOREIGN_KEY__COLUMNS); } return foreignKeys; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EList getAccessPatterns() { if (accessPatterns == null) { accessPatterns = new EObjectWithInverseResolvingEList.ManyInverse(AccessPattern.class, this, RelationalPackage.COLUMN__ACCESS_PATTERNS, RelationalPackage.ACCESS_PATTERN__COLUMNS); } return accessPatterns; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public ColumnSet getOwner() { if (eContainerFeatureID != RelationalPackage.COLUMN__OWNER) return null; return (ColumnSet)eContainer; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setOwner(ColumnSet newOwner) { if (newOwner != eContainer || (eContainerFeatureID != RelationalPackage.COLUMN__OWNER && newOwner != null)) { if (EcoreUtil.isAncestor(this, newOwner)) throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$ NotificationChain msgs = null; if (eContainer != null) msgs = eBasicRemoveFromContainer(msgs); if (newOwner != null) msgs = ((InternalEObject)newOwner).eInverseAdd(this, RelationalPackage.COLUMN_SET__COLUMNS, ColumnSet.class, msgs); msgs = eBasicSetContainer((InternalEObject)newOwner, RelationalPackage.COLUMN__OWNER, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__OWNER, newOwner, newOwner)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EObject getType() { if (type != null && type.eIsProxy()) { EObject oldType = type; type = eResolveProxy((InternalEObject)type); if (type != oldType) { if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.RESOLVE, RelationalPackage.COLUMN__TYPE, oldType, type)); } } return type; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EObject basicGetType() { return type; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void setType(EObject newType) { EObject oldType = type; type = newType; boolean oldTypeESet = typeESet; typeESet = true; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.SET, RelationalPackage.COLUMN__TYPE, oldType, type, !oldTypeESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void unsetType() { EObject oldType = type; boolean oldTypeESet = typeESet; type = null; typeESet = false; if (eNotificationRequired()) eNotify(new ENotificationImpl(this, Notification.UNSET, RelationalPackage.COLUMN__TYPE, oldType, null, oldTypeESet)); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean isSetType() { return typeESet; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { if (featureID >= 0) { switch (eDerivedStructuralFeatureID(featureID, baseClass)) { case RelationalPackage.COLUMN__UNIQUE_KEYS: return ((InternalEList)getUniqueKeys()).basicAdd(otherEnd, msgs); case RelationalPackage.COLUMN__INDEXES: return ((InternalEList)getIndexes()).basicAdd(otherEnd, msgs); case RelationalPackage.COLUMN__FOREIGN_KEYS: return ((InternalEList)getForeignKeys()).basicAdd(otherEnd, msgs); case RelationalPackage.COLUMN__ACCESS_PATTERNS: return ((InternalEList)getAccessPatterns()).basicAdd(otherEnd, msgs); case RelationalPackage.COLUMN__OWNER: if (eContainer != null) msgs = eBasicRemoveFromContainer(msgs); return eBasicSetContainer(otherEnd, RelationalPackage.COLUMN__OWNER, msgs); default: return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs); } } if (eContainer != null) msgs = eBasicRemoveFromContainer(msgs); return eBasicSetContainer(otherEnd, featureID, msgs); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) { if (featureID >= 0) { switch (eDerivedStructuralFeatureID(featureID, baseClass)) { case RelationalPackage.COLUMN__UNIQUE_KEYS: return ((InternalEList)getUniqueKeys()).basicRemove(otherEnd, msgs); case RelationalPackage.COLUMN__INDEXES: return ((InternalEList)getIndexes()).basicRemove(otherEnd, msgs); case RelationalPackage.COLUMN__FOREIGN_KEYS: return ((InternalEList)getForeignKeys()).basicRemove(otherEnd, msgs); case RelationalPackage.COLUMN__ACCESS_PATTERNS: return ((InternalEList)getAccessPatterns()).basicRemove(otherEnd, msgs); case RelationalPackage.COLUMN__OWNER: return eBasicSetContainer(null, RelationalPackage.COLUMN__OWNER, msgs); default: return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs); } } return eBasicSetContainer(null, featureID, msgs); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) { if (eContainerFeatureID >= 0) { switch (eContainerFeatureID) { case RelationalPackage.COLUMN__OWNER: return eContainer.eInverseRemove(this, RelationalPackage.COLUMN_SET__COLUMNS, ColumnSet.class, msgs); default: return eDynamicBasicRemoveFromContainer(msgs); } } return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object eGet(EStructuralFeature eFeature, boolean resolve) { switch (eDerivedStructuralFeatureID(eFeature)) { case RelationalPackage.COLUMN__NAME: return getName(); case RelationalPackage.COLUMN__NAME_IN_SOURCE: return getNameInSource(); case RelationalPackage.COLUMN__NATIVE_TYPE: return getNativeType(); case RelationalPackage.COLUMN__LENGTH: return new Integer(getLength()); case RelationalPackage.COLUMN__FIXED_LENGTH: return isFixedLength() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__PRECISION: return new Integer(getPrecision()); case RelationalPackage.COLUMN__SCALE: return new Integer(getScale()); case RelationalPackage.COLUMN__NULLABLE: return getNullable(); case RelationalPackage.COLUMN__AUTO_INCREMENTED: return isAutoIncremented() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__DEFAULT_VALUE: return getDefaultValue(); case RelationalPackage.COLUMN__MINIMUM_VALUE: return getMinimumValue(); case RelationalPackage.COLUMN__MAXIMUM_VALUE: return getMaximumValue(); case RelationalPackage.COLUMN__FORMAT: return getFormat(); case RelationalPackage.COLUMN__CHARACTER_SET_NAME: return getCharacterSetName(); case RelationalPackage.COLUMN__COLLATION_NAME: return getCollationName(); case RelationalPackage.COLUMN__SELECTABLE: return isSelectable() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__UPDATEABLE: return isUpdateable() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__CASE_SENSITIVE: return isCaseSensitive() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__SEARCHABILITY: return getSearchability(); case RelationalPackage.COLUMN__CURRENCY: return isCurrency() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__RADIX: return new Integer(getRadix()); case RelationalPackage.COLUMN__SIGNED: return isSigned() ? Boolean.TRUE : Boolean.FALSE; case RelationalPackage.COLUMN__DISTINCT_VALUE_COUNT: return new Integer(getDistinctValueCount()); case RelationalPackage.COLUMN__NULL_VALUE_COUNT: return new Integer(getNullValueCount()); case RelationalPackage.COLUMN__UNIQUE_KEYS: return getUniqueKeys(); case RelationalPackage.COLUMN__INDEXES: return getIndexes(); case RelationalPackage.COLUMN__FOREIGN_KEYS: return getForeignKeys(); case RelationalPackage.COLUMN__ACCESS_PATTERNS: return getAccessPatterns(); case RelationalPackage.COLUMN__OWNER: return getOwner(); case RelationalPackage.COLUMN__TYPE: if (resolve) return getType(); return basicGetType(); } return eDynamicGet(eFeature, resolve); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eSet(EStructuralFeature eFeature, Object newValue) { switch (eDerivedStructuralFeatureID(eFeature)) { case RelationalPackage.COLUMN__NAME: setName((String)newValue); return; case RelationalPackage.COLUMN__NAME_IN_SOURCE: setNameInSource((String)newValue); return; case RelationalPackage.COLUMN__NATIVE_TYPE: setNativeType((String)newValue); return; case RelationalPackage.COLUMN__LENGTH: setLength(((Integer)newValue).intValue()); return; case RelationalPackage.COLUMN__FIXED_LENGTH: setFixedLength(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__PRECISION: setPrecision(((Integer)newValue).intValue()); return; case RelationalPackage.COLUMN__SCALE: setScale(((Integer)newValue).intValue()); return; case RelationalPackage.COLUMN__NULLABLE: setNullable((NullableType)newValue); return; case RelationalPackage.COLUMN__AUTO_INCREMENTED: setAutoIncremented(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__DEFAULT_VALUE: setDefaultValue((String)newValue); return; case RelationalPackage.COLUMN__MINIMUM_VALUE: setMinimumValue((String)newValue); return; case RelationalPackage.COLUMN__MAXIMUM_VALUE: setMaximumValue((String)newValue); return; case RelationalPackage.COLUMN__FORMAT: setFormat((String)newValue); return; case RelationalPackage.COLUMN__CHARACTER_SET_NAME: setCharacterSetName((String)newValue); return; case RelationalPackage.COLUMN__COLLATION_NAME: setCollationName((String)newValue); return; case RelationalPackage.COLUMN__SELECTABLE: setSelectable(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__UPDATEABLE: setUpdateable(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__CASE_SENSITIVE: setCaseSensitive(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__SEARCHABILITY: setSearchability((SearchabilityType)newValue); return; case RelationalPackage.COLUMN__CURRENCY: setCurrency(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__RADIX: setRadix(((Integer)newValue).intValue()); return; case RelationalPackage.COLUMN__SIGNED: setSigned(((Boolean)newValue).booleanValue()); return; case RelationalPackage.COLUMN__DISTINCT_VALUE_COUNT: setDistinctValueCount(((Integer)newValue).intValue()); return; case RelationalPackage.COLUMN__NULL_VALUE_COUNT: setNullValueCount(((Integer)newValue).intValue()); return; case RelationalPackage.COLUMN__UNIQUE_KEYS: getUniqueKeys().clear(); getUniqueKeys().addAll((Collection)newValue); return; case RelationalPackage.COLUMN__INDEXES: getIndexes().clear(); getIndexes().addAll((Collection)newValue); return; case RelationalPackage.COLUMN__FOREIGN_KEYS: getForeignKeys().clear(); getForeignKeys().addAll((Collection)newValue); return; case RelationalPackage.COLUMN__ACCESS_PATTERNS: getAccessPatterns().clear(); getAccessPatterns().addAll((Collection)newValue); return; case RelationalPackage.COLUMN__OWNER: setOwner((ColumnSet)newValue); return; case RelationalPackage.COLUMN__TYPE: setType((EObject)newValue); return; } eDynamicSet(eFeature, newValue); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public void eUnset(EStructuralFeature eFeature) { switch (eDerivedStructuralFeatureID(eFeature)) { case RelationalPackage.COLUMN__NAME: setName(NAME_EDEFAULT); return; case RelationalPackage.COLUMN__NAME_IN_SOURCE: setNameInSource(NAME_IN_SOURCE_EDEFAULT); return; case RelationalPackage.COLUMN__NATIVE_TYPE: unsetNativeType(); return; case RelationalPackage.COLUMN__LENGTH: setLength(LENGTH_EDEFAULT); return; case RelationalPackage.COLUMN__FIXED_LENGTH: setFixedLength(FIXED_LENGTH_EDEFAULT); return; case RelationalPackage.COLUMN__PRECISION: setPrecision(PRECISION_EDEFAULT); return; case RelationalPackage.COLUMN__SCALE: setScale(SCALE_EDEFAULT); return; case RelationalPackage.COLUMN__NULLABLE: setNullable(NULLABLE_EDEFAULT); return; case RelationalPackage.COLUMN__AUTO_INCREMENTED: setAutoIncremented(AUTO_INCREMENTED_EDEFAULT); return; case RelationalPackage.COLUMN__DEFAULT_VALUE: setDefaultValue(DEFAULT_VALUE_EDEFAULT); return; case RelationalPackage.COLUMN__MINIMUM_VALUE: setMinimumValue(MINIMUM_VALUE_EDEFAULT); return; case RelationalPackage.COLUMN__MAXIMUM_VALUE: setMaximumValue(MAXIMUM_VALUE_EDEFAULT); return; case RelationalPackage.COLUMN__FORMAT: setFormat(FORMAT_EDEFAULT); return; case RelationalPackage.COLUMN__CHARACTER_SET_NAME: setCharacterSetName(CHARACTER_SET_NAME_EDEFAULT); return; case RelationalPackage.COLUMN__COLLATION_NAME: setCollationName(COLLATION_NAME_EDEFAULT); return; case RelationalPackage.COLUMN__SELECTABLE: setSelectable(SELECTABLE_EDEFAULT); return; case RelationalPackage.COLUMN__UPDATEABLE: setUpdateable(UPDATEABLE_EDEFAULT); return; case RelationalPackage.COLUMN__CASE_SENSITIVE: setCaseSensitive(CASE_SENSITIVE_EDEFAULT); return; case RelationalPackage.COLUMN__SEARCHABILITY: setSearchability(SEARCHABILITY_EDEFAULT); return; case RelationalPackage.COLUMN__CURRENCY: setCurrency(CURRENCY_EDEFAULT); return; case RelationalPackage.COLUMN__RADIX: setRadix(RADIX_EDEFAULT); return; case RelationalPackage.COLUMN__SIGNED: setSigned(SIGNED_EDEFAULT); return; case RelationalPackage.COLUMN__DISTINCT_VALUE_COUNT: setDistinctValueCount(DISTINCT_VALUE_COUNT_EDEFAULT); return; case RelationalPackage.COLUMN__NULL_VALUE_COUNT: setNullValueCount(NULL_VALUE_COUNT_EDEFAULT); return; case RelationalPackage.COLUMN__UNIQUE_KEYS: getUniqueKeys().clear(); return; case RelationalPackage.COLUMN__INDEXES: getIndexes().clear(); return; case RelationalPackage.COLUMN__FOREIGN_KEYS: getForeignKeys().clear(); return; case RelationalPackage.COLUMN__ACCESS_PATTERNS: getAccessPatterns().clear(); return; case RelationalPackage.COLUMN__OWNER: setOwner((ColumnSet)null); return; case RelationalPackage.COLUMN__TYPE: unsetType(); return; } eDynamicUnset(eFeature); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public boolean eIsSet(EStructuralFeature eFeature) { switch (eDerivedStructuralFeatureID(eFeature)) { case RelationalPackage.COLUMN__NAME: return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); case RelationalPackage.COLUMN__NAME_IN_SOURCE: return NAME_IN_SOURCE_EDEFAULT == null ? nameInSource != null : !NAME_IN_SOURCE_EDEFAULT.equals(nameInSource); case RelationalPackage.COLUMN__NATIVE_TYPE: return isSetNativeType(); case RelationalPackage.COLUMN__LENGTH: return length != LENGTH_EDEFAULT; case RelationalPackage.COLUMN__FIXED_LENGTH: return fixedLength != FIXED_LENGTH_EDEFAULT; case RelationalPackage.COLUMN__PRECISION: return precision != PRECISION_EDEFAULT; case RelationalPackage.COLUMN__SCALE: return scale != SCALE_EDEFAULT; case RelationalPackage.COLUMN__NULLABLE: return nullable != NULLABLE_EDEFAULT; case RelationalPackage.COLUMN__AUTO_INCREMENTED: return autoIncremented != AUTO_INCREMENTED_EDEFAULT; case RelationalPackage.COLUMN__DEFAULT_VALUE: return DEFAULT_VALUE_EDEFAULT == null ? defaultValue != null : !DEFAULT_VALUE_EDEFAULT.equals(defaultValue); case RelationalPackage.COLUMN__MINIMUM_VALUE: return MINIMUM_VALUE_EDEFAULT == null ? minimumValue != null : !MINIMUM_VALUE_EDEFAULT.equals(minimumValue); case RelationalPackage.COLUMN__MAXIMUM_VALUE: return MAXIMUM_VALUE_EDEFAULT == null ? maximumValue != null : !MAXIMUM_VALUE_EDEFAULT.equals(maximumValue); case RelationalPackage.COLUMN__FORMAT: return FORMAT_EDEFAULT == null ? format != null : !FORMAT_EDEFAULT.equals(format); case RelationalPackage.COLUMN__CHARACTER_SET_NAME: return CHARACTER_SET_NAME_EDEFAULT == null ? characterSetName != null : !CHARACTER_SET_NAME_EDEFAULT.equals(characterSetName); case RelationalPackage.COLUMN__COLLATION_NAME: return COLLATION_NAME_EDEFAULT == null ? collationName != null : !COLLATION_NAME_EDEFAULT.equals(collationName); case RelationalPackage.COLUMN__SELECTABLE: return selectable != SELECTABLE_EDEFAULT; case RelationalPackage.COLUMN__UPDATEABLE: return updateable != UPDATEABLE_EDEFAULT; case RelationalPackage.COLUMN__CASE_SENSITIVE: return caseSensitive != CASE_SENSITIVE_EDEFAULT; case RelationalPackage.COLUMN__SEARCHABILITY: return searchability != SEARCHABILITY_EDEFAULT; case RelationalPackage.COLUMN__CURRENCY: return currency != CURRENCY_EDEFAULT; case RelationalPackage.COLUMN__RADIX: return radix != RADIX_EDEFAULT; case RelationalPackage.COLUMN__SIGNED: return signed != SIGNED_EDEFAULT; case RelationalPackage.COLUMN__DISTINCT_VALUE_COUNT: return distinctValueCount != DISTINCT_VALUE_COUNT_EDEFAULT; case RelationalPackage.COLUMN__NULL_VALUE_COUNT: return nullValueCount != NULL_VALUE_COUNT_EDEFAULT; case RelationalPackage.COLUMN__UNIQUE_KEYS: return uniqueKeys != null && !uniqueKeys.isEmpty(); case RelationalPackage.COLUMN__INDEXES: return indexes != null && !indexes.isEmpty(); case RelationalPackage.COLUMN__FOREIGN_KEYS: return foreignKeys != null && !foreignKeys.isEmpty(); case RelationalPackage.COLUMN__ACCESS_PATTERNS: return accessPatterns != null && !accessPatterns.isEmpty(); case RelationalPackage.COLUMN__OWNER: return getOwner() != null; case RelationalPackage.COLUMN__TYPE: return isSetType(); } return eDynamicIsSet(eFeature); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String toString() { if (eIsProxy()) return super.toString(); StringBuffer result = new StringBuffer(super.toString()); result.append(" (nativeType: "); //$NON-NLS-1$ if (nativeTypeESet) result.append(nativeType); else result.append("<unset>"); //$NON-NLS-1$ result.append(", length: "); //$NON-NLS-1$ result.append(length); result.append(", fixedLength: "); //$NON-NLS-1$ result.append(fixedLength); result.append(", precision: "); //$NON-NLS-1$ result.append(precision); result.append(", scale: "); //$NON-NLS-1$ result.append(scale); result.append(", nullable: "); //$NON-NLS-1$ result.append(nullable); result.append(", autoIncremented: "); //$NON-NLS-1$ result.append(autoIncremented); result.append(", defaultValue: "); //$NON-NLS-1$ result.append(defaultValue); result.append(", minimumValue: "); //$NON-NLS-1$ result.append(minimumValue); result.append(", maximumValue: "); //$NON-NLS-1$ result.append(maximumValue); result.append(", format: "); //$NON-NLS-1$ result.append(format); result.append(", characterSetName: "); //$NON-NLS-1$ result.append(characterSetName); result.append(", collationName: "); //$NON-NLS-1$ result.append(collationName); result.append(", selectable: "); //$NON-NLS-1$ result.append(selectable); result.append(", updateable: "); //$NON-NLS-1$ result.append(updateable); result.append(", caseSensitive: "); //$NON-NLS-1$ result.append(caseSensitive); result.append(", searchability: "); //$NON-NLS-1$ result.append(searchability); result.append(", currency: "); //$NON-NLS-1$ result.append(currency); result.append(", radix: "); //$NON-NLS-1$ result.append(radix); result.append(", signed: "); //$NON-NLS-1$ result.append(signed); result.append(", distinctValueCount: "); //$NON-NLS-1$ result.append(distinctValueCount); result.append(", nullValueCount: "); //$NON-NLS-1$ result.append(nullValueCount); result.append(')'); return result.toString(); } } //ColumnImpl