/** * <copyright> * </copyright> * * $Id: Column.java,v 1.5 2011/10/25 13:21:26 mtaal Exp $ */ package org.eclipse.emf.texo.orm.annotations.model.orm; import org.eclipse.emf.texo.orm.annotator.BaseOrmAnnotation; /** * <!-- begin-user-doc --> A representation of the model object '<em><b>Column</b></em>'. <!-- end-user-doc --> * * <!-- begin-model-doc --> * * * @Target({METHOD, FIELD}) @Retention(RUNTIME) * public @interface Column { * String name() default ""; * boolean unique() default false; * boolean nullable() default true; * boolean insertable() default true; * boolean updatable() default true; * String columnDefinition() default ""; * String table() default ""; * int length() default 255; * int precision() default 0; // decimal precision * int scale() default 0; // decimal scale * } * * * <!-- end-model-doc --> * * <p> * The following features are supported: * <ul> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getColumnDefinition <em>Column Definition</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isInsertable <em>Insertable</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getLength <em>Length</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getName <em>Name</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isNullable <em>Nullable</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getPrecision <em>Precision</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getScale <em>Scale</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getTable <em>Table</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUnique <em>Unique</em>}</li> * <li>{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUpdatable <em>Updatable</em>}</li> * </ul> * </p> * * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn() * @model extendedMetaData="name='column' kind='empty'" * @extends BaseOrmAnnotation * @generated */ public interface Column extends BaseOrmAnnotation { /** * Returns the value of the '<em><b>Column Definition</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Column Definition</em>' attribute isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Column Definition</em>' attribute. * @see #setColumnDefinition(String) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_ColumnDefinition() * @model dataType="org.eclipse.emf.ecore.xml.type.String" * extendedMetaData="kind='attribute' name='column-definition'" * @generated */ String getColumnDefinition(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getColumnDefinition <em>Column Definition</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Column Definition</em>' attribute. * @see #getColumnDefinition() * @generated */ void setColumnDefinition(String value); /** * Returns the value of the '<em><b>Insertable</b></em>' attribute. * The default value is <code>"true"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Insertable</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Insertable</em>' attribute. * @see #isSetInsertable() * @see #unsetInsertable() * @see #setInsertable(boolean) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Insertable() * @model default="true" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" * extendedMetaData="kind='attribute' name='insertable'" * @generated */ boolean isInsertable(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isInsertable <em>Insertable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Insertable</em>' attribute. * @see #isSetInsertable() * @see #unsetInsertable() * @see #isInsertable() * @generated */ void setInsertable(boolean value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isInsertable <em>Insertable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetInsertable() * @see #isInsertable() * @see #setInsertable(boolean) * @generated */ void unsetInsertable(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isInsertable <em>Insertable</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Insertable</em>' attribute is set. * @see #unsetInsertable() * @see #isInsertable() * @see #setInsertable(boolean) * @generated */ boolean isSetInsertable(); /** * Returns the value of the '<em><b>Length</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Length</em>' attribute isn't clear, there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Length</em>' attribute. * @see #isSetLength() * @see #unsetLength() * @see #setLength(int) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Length() * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Int" * extendedMetaData="kind='attribute' name='length'" * @generated */ int getLength(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getLength <em>Length</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Length</em>' attribute. * @see #isSetLength() * @see #unsetLength() * @see #getLength() * @generated */ void setLength(int value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getLength <em>Length</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetLength() * @see #getLength() * @see #setLength(int) * @generated */ void unsetLength(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getLength <em>Length</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Length</em>' attribute is set. * @see #unsetLength() * @see #getLength() * @see #setLength(int) * @generated */ boolean isSetLength(); /** * Returns the value of the '<em><b>Name</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Name</em>' attribute isn't clear, there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Name</em>' attribute. * @see #setName(String) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Name() * @model dataType="org.eclipse.emf.ecore.xml.type.String" * extendedMetaData="kind='attribute' name='name'" * @generated */ String getName(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getName <em>Name</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Name</em>' attribute. * @see #getName() * @generated */ void setName(String value); /** * Returns the value of the '<em><b>Nullable</b></em>' attribute. * The default value is <code>"true"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Nullable</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Nullable</em>' attribute. * @see #isSetNullable() * @see #unsetNullable() * @see #setNullable(boolean) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Nullable() * @model default="true" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" * extendedMetaData="kind='attribute' name='nullable'" * @generated */ boolean isNullable(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isNullable <em>Nullable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Nullable</em>' attribute. * @see #isSetNullable() * @see #unsetNullable() * @see #isNullable() * @generated */ void setNullable(boolean value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isNullable <em>Nullable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetNullable() * @see #isNullable() * @see #setNullable(boolean) * @generated */ void unsetNullable(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isNullable <em>Nullable</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Nullable</em>' attribute is set. * @see #unsetNullable() * @see #isNullable() * @see #setNullable(boolean) * @generated */ boolean isSetNullable(); /** * Returns the value of the '<em><b>Precision</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Precision</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Precision</em>' attribute. * @see #isSetPrecision() * @see #unsetPrecision() * @see #setPrecision(int) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Precision() * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Int" * extendedMetaData="kind='attribute' name='precision'" * @generated */ int getPrecision(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getPrecision <em>Precision</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Precision</em>' attribute. * @see #isSetPrecision() * @see #unsetPrecision() * @see #getPrecision() * @generated */ void setPrecision(int value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getPrecision <em>Precision</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetPrecision() * @see #getPrecision() * @see #setPrecision(int) * @generated */ void unsetPrecision(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getPrecision <em>Precision</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Precision</em>' attribute is set. * @see #unsetPrecision() * @see #getPrecision() * @see #setPrecision(int) * @generated */ boolean isSetPrecision(); /** * Returns the value of the '<em><b>Scale</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Scale</em>' attribute isn't clear, there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Scale</em>' attribute. * @see #isSetScale() * @see #unsetScale() * @see #setScale(int) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Scale() * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Int" * extendedMetaData="kind='attribute' name='scale'" * @generated */ int getScale(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getScale <em>Scale</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Scale</em>' attribute. * @see #isSetScale() * @see #unsetScale() * @see #getScale() * @generated */ void setScale(int value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getScale <em>Scale</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetScale() * @see #getScale() * @see #setScale(int) * @generated */ void unsetScale(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getScale <em>Scale</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Scale</em>' attribute is set. * @see #unsetScale() * @see #getScale() * @see #setScale(int) * @generated */ boolean isSetScale(); /** * Returns the value of the '<em><b>Table</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Table</em>' attribute isn't clear, there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Table</em>' attribute. * @see #setTable(String) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Table() * @model dataType="org.eclipse.emf.ecore.xml.type.String" * extendedMetaData="kind='attribute' name='table'" * @generated */ String getTable(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#getTable <em>Table</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Table</em>' attribute. * @see #getTable() * @generated */ void setTable(String value); /** * Returns the value of the '<em><b>Unique</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Unique</em>' attribute isn't clear, there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Unique</em>' attribute. * @see #isSetUnique() * @see #unsetUnique() * @see #setUnique(boolean) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Unique() * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" * extendedMetaData="kind='attribute' name='unique'" * @generated */ boolean isUnique(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUnique <em>Unique</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Unique</em>' attribute. * @see #isSetUnique() * @see #unsetUnique() * @see #isUnique() * @generated */ void setUnique(boolean value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUnique <em>Unique</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetUnique() * @see #isUnique() * @see #setUnique(boolean) * @generated */ void unsetUnique(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUnique <em>Unique</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Unique</em>' attribute is set. * @see #unsetUnique() * @see #isUnique() * @see #setUnique(boolean) * @generated */ boolean isSetUnique(); /** * Returns the value of the '<em><b>Updatable</b></em>' attribute. * The default value is <code>"true"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Updatable</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Updatable</em>' attribute. * @see #isSetUpdatable() * @see #unsetUpdatable() * @see #setUpdatable(boolean) * @see org.eclipse.emf.texo.orm.annotations.model.orm.OrmPackage#getColumn_Updatable() * @model default="true" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" * extendedMetaData="kind='attribute' name='updatable'" * @generated */ boolean isUpdatable(); /** * Sets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUpdatable <em>Updatable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Updatable</em>' attribute. * @see #isSetUpdatable() * @see #unsetUpdatable() * @see #isUpdatable() * @generated */ void setUpdatable(boolean value); /** * Unsets the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUpdatable <em>Updatable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @see #isSetUpdatable() * @see #isUpdatable() * @see #setUpdatable(boolean) * @generated */ void unsetUpdatable(); /** * Returns whether the value of the '{@link org.eclipse.emf.texo.orm.annotations.model.orm.Column#isUpdatable <em>Updatable</em>}' attribute is set. * <!-- begin-user-doc --> <!-- end-user-doc --> * @return whether the value of the '<em>Updatable</em>' attribute is set. * @see #unsetUpdatable() * @see #isUpdatable() * @see #setUpdatable(boolean) * @generated */ boolean isSetUpdatable(); } // Column