/** * <copyright> </copyright> * * $Id: MetadataColumn.java 80855 2012-04-01 09:39:25Z ldong $ */ package org.talend.core.model.metadata.builder.connection; import orgomg.cwm.resource.record.Field; /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Metadata Column</b></em>'. * <!-- end-user-doc --> * * <!-- begin-model-doc --> * represents a metada column which contains source (such as DB) definitions as weel as Talend mappings * <!-- end-model-doc --> * * <p> * The following features are supported: * <ul> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getSourceType <em>Source Type</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getDefaultValue <em>Default Value</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getTalendType <em>Talend Type</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#isKey <em>Key</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#isNullable <em>Nullable</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getTable <em>Table</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getOriginalField <em>Original Field</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getPattern <em>Pattern</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getDisplayField <em>Display Field</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getOriginalLength <em>Original Length</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getRelatedEntity <em>Related Entity</em>}</li> * <li>{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getRelationshipType <em>Relationship Type</em>}</li> * </ul> * </p> * * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn() * @model * @generated */ public interface MetadataColumn extends AbstractMetadataObject, Field { /** * Returns the value of the '<em><b>Source Type</b></em>' attribute. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Source Type</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> Schema DB type (VARCHAR for example ), can be initialised from DB * column type and modified by the user.) This is maintained in synch with the TalendType (at least in the Table * schema editor). * * <!-- end-model-doc --> * * @return the value of the '<em>Source Type</em>' attribute. * @see #setSourceType(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_SourceType() * @model * @generated */ String getSourceType(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getSourceType <em>Source Type</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Source Type</em>' attribute. * @see #getSourceType() * @generated */ void setSourceType(String value); /** * Returns the value of the '<em><b>Default Value</b></em>' attribute. The default value is <code>""</code>. <!-- * begin-user-doc --> * <p> * If the meaning of the '<em>Default Value</em>' attribute isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> * * @deprecated Use initialValue instead (This represents the default value for column. This may be changed by the * user.) * * * <!-- end-model-doc --> * @return the value of the '<em>Default Value</em>' attribute. * @see #setDefaultValue(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_DefaultValue() * @model default="" transient="true" volatile="true" * @generated */ String getDefaultValue(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getDefaultValue <em>Default Value</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Default Value</em>' attribute. * @see #getDefaultValue() * @generated */ void setDefaultValue(String value); /** * Returns the value of the '<em><b>Talend Type</b></em>' attribute. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Talend Type</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> java type used by Talend for handling this column elements; This * seems to be synched with the sourceType. This must be the case for schema used for Table creation. <!-- * end-model-doc --> * * @return the value of the '<em>Talend Type</em>' attribute. * @see #setTalendType(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_TalendType() * @model * @generated */ String getTalendType(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getTalendType <em>Talend Type</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Talend Type</em>' attribute. * @see #getTalendType() * @generated */ void setTalendType(String value); /** * Returns the value of the '<em><b>Key</b></em>' attribute. The default value is <code>"false"</code>. <!-- * begin-user-doc --> * <p> * If the meaning of the '<em>Key</em>' attribute isn't clear, there really should be more of a description here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> Whether this column is a considered a key, in a business meaning * (This is not technical). This may apply to file, xml or dB columns. May be changed by the user. When retrieving * Metadata from DB this will be set to true if the column belong to the primary key. <!-- end-model-doc --> * * @return the value of the '<em>Key</em>' attribute. * @see #setKey(boolean) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_Key() * @model default="false" * @generated */ boolean isKey(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#isKey <em>Key</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Key</em>' attribute. * @see #isKey() * @generated */ void setKey(boolean 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 --> <!-- begin-model-doc --> whether this column supports null values. May be changed by the * user. <!-- end-model-doc --> * * @return the value of the '<em>Nullable</em>' attribute. * @see #setNullable(boolean) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_Nullable() * @model default="true" dataType="orgomg.cwm.objectmodel.core.Boolean" * @generated */ boolean isNullable(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#isNullable <em>Nullable</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Nullable</em>' attribute. * @see #isNullable() * @generated */ void setNullable(boolean value); /** * Returns the value of the '<em><b>Table</b></em>' reference. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Table</em>' container reference isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> reference to the containing table or view <!-- end-model-doc --> * * @return the value of the '<em>Table</em>' reference. * @see #setTable(MetadataTable) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_Table() * @model resolveProxies="false" transient="true" volatile="true" derived="true" * @generated */ MetadataTable getTable(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getTable <em>Table</em>}' reference. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Table</em>' reference. * @see #getTable() * @generated */ void setTable(MetadataTable value); /** * Returns the value of the '<em><b>Original Field</b></em>' attribute. The default value is <code>""</code>. <!-- * begin-user-doc --> * <p> * If the meaning of the '<em>Original Field</em>' attribute isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> * * @deprecated use g(s)etName Logical name of the column <!-- end-model-doc --> * @return the value of the '<em>Original Field</em>' attribute. * @see #setOriginalField(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_OriginalField() * @model default="" transient="true" volatile="true" * @generated */ String getOriginalField(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getOriginalField <em>Original Field</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Original Field</em>' attribute. * @see #getOriginalField() * @generated */ void setOriginalField(String value); /** * Returns the value of the '<em><b>Pattern</b></em>' attribute. The default value is <code>""</code>. <!-- * begin-user-doc --> * <p> * If the meaning of the '<em>Pattern</em>' attribute isn't clear, there really should be more of a description * here... * </p> * <!-- end-user-doc --> <!-- begin-model-doc --> pattern mainly used for date parsing <!-- end-model-doc --> * * @return the value of the '<em>Pattern</em>' attribute. * @see #setPattern(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_Pattern() * @model default="" * @generated */ String getPattern(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getPattern <em>Pattern</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Pattern</em>' attribute. * @see #getPattern() * @generated */ void setPattern(String value); /** * Returns the value of the '<em><b>Display Field</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Display Field</em>' attribute isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Display Field</em>' attribute. * @see #setDisplayField(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_DisplayField() * @model * @generated */ String getDisplayField(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getDisplayField <em>Display Field</em>}' attribute. * <!-- begin-user-doc --> <!-- end-user-doc --> * @param value the new value of the '<em>Display Field</em>' attribute. * @see #getDisplayField() * @generated */ void setDisplayField(String value); /** * Returns the value of the '<em><b>Original Length</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Original 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>Original Length</em>' attribute. * @see #setOriginalLength(long) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_OriginalLength() * @model dataType="orgomg.cwm.objectmodel.core.Integer" * @generated */ long getOriginalLength(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getOriginalLength <em>Original Length</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Original Length</em>' attribute. * @see #getOriginalLength() * @generated */ void setOriginalLength(long value); /** * Returns the value of the '<em><b>Related Entity</b></em>' attribute. * The default value is <code>""</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Related Entity</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Related Entity</em>' attribute. * @see #setRelatedEntity(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_RelatedEntity() * @model default="" * @generated */ String getRelatedEntity(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getRelatedEntity <em>Related Entity</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Related Entity</em>' attribute. * @see #getRelatedEntity() * @generated */ void setRelatedEntity(String value); /** * Returns the value of the '<em><b>Relationship Type</b></em>' attribute. * The default value is <code>""</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Relationship Type</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Relationship Type</em>' attribute. * @see #setRelationshipType(String) * @see org.talend.core.model.metadata.builder.connection.ConnectionPackage#getMetadataColumn_RelationshipType() * @model default="" * @generated */ String getRelationshipType(); /** * Sets the value of the '{@link org.talend.core.model.metadata.builder.connection.MetadataColumn#getRelationshipType <em>Relationship Type</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Relationship Type</em>' attribute. * @see #getRelationshipType() * @generated */ void setRelationshipType(String value); } // MetadataColumn