/** * Copyright (c) 2012-2016 Marsha Chechik, Alessio Di Sandro, Michalis Famelis, * Rick Salay. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Alessio Di Sandro - Implementation. */ package edu.toronto.cs.se.modelepedia.relationaldatabase_mavo; import org.eclipse.emf.common.util.EList; /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Foreign Key</b></em>'. * <!-- end-user-doc --> * * <p> * The following features are supported: * </p> * <ul> * <li>{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignKey#getTableColumn <em>Table Column</em>}</li> * <li>{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignKey#getForeignColumn <em>Foreign Column</em>}</li> * <li>{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignKey#getTable <em>Table</em>}</li> * </ul> * * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.RelationalDatabase_MAVOPackage#getForeignKey() * @model annotation="gmf.node label='name'" * @generated */ public interface ForeignKey extends NamedElement { /** * Returns the value of the '<em><b>Table Column</b></em>' containment reference list. * The list contents are of type {@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.TableColumnReference}. * It is bidirectional and its opposite is '{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.TableColumnReference#getSource <em>Source</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Table Column</em>' containment reference list isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Table Column</em>' containment reference list. * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.RelationalDatabase_MAVOPackage#getForeignKey_TableColumn() * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.TableColumnReference#getSource * @model opposite="source" containment="true" required="true" * @generated */ EList<TableColumnReference> getTableColumn(); /** * Returns the value of the '<em><b>Foreign Column</b></em>' containment reference list. * The list contents are of type {@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignColumnReference}. * It is bidirectional and its opposite is '{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignColumnReference#getSource <em>Source</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Foreign Column</em>' containment reference list isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Foreign Column</em>' containment reference list. * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.RelationalDatabase_MAVOPackage#getForeignKey_ForeignColumn() * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignColumnReference#getSource * @model opposite="source" containment="true" required="true" * @generated */ EList<ForeignColumnReference> getForeignColumn(); /** * Returns the value of the '<em><b>Table</b></em>' container reference. * It is bidirectional and its opposite is '{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.Table#getForeignKeys <em>Foreign Keys</em>}'. * <!-- 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 --> * @return the value of the '<em>Table</em>' container reference. * @see #setTable(Table) * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.RelationalDatabase_MAVOPackage#getForeignKey_Table() * @see edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.Table#getForeignKeys * @model opposite="foreignKeys" required="true" transient="false" * @generated */ Table getTable(); /** * Sets the value of the '{@link edu.toronto.cs.se.modelepedia.relationaldatabase_mavo.ForeignKey#getTable <em>Table</em>}' container reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Table</em>' container reference. * @see #getTable() * @generated */ void setTable(Table value); } // ForeignKey