001// license-header java merge-point 002// 003// Attention: generated code (by Metafacade.vsl) - do not modify! 004// 005package org.andromda.metafacades.uml; 006 007/** 008 * Represents an association end of an entity. 009 * 010 * Metafacade interface to be used by AndroMDA cartridges. 011 */ 012public interface EntityAssociationEnd 013 extends AssociationEndFacade 014{ 015 /** 016 * Indicates the metafacade type (used for metafacade mappings). 017 * 018 * @return boolean always <code>true</code> 019 */ 020 public boolean isEntityAssociationEndMetaType(); 021 022 /** 023 * The name of the index to create on a column that persists the foreign key attribute. 024 * @return String 025 */ 026 public String getColumnIndex(); 027 028 /** 029 * The name of the column that makes up the foreign key. 030 * @return String 031 */ 032 public String getColumnName(); 033 034 /** 035 * The name of the foreign key constraint to use for databases. 036 * @return String 037 */ 038 public String getForeignKeyConstraintName(); 039 040 /** 041 * The current foreign key suffix specified for this entity association end facade. 042 * @return String 043 */ 044 public String getForeignKeySuffix(); 045 046 /** 047 * The SQL type for this the foreign key column of this association end. 048 * @return String 049 */ 050 public String getSqlType(); 051 052 /** 053 * The name of the unique-key that this unique association end belongs 054 * @return String 055 */ 056 public String getUniqueGroup(); 057 058 /** 059 * Indicates whether or not a foreign identifier should be used for the entity that owns this 060 * association end. This would only make sense in the case of a child in a one-to-one 061 * parent-child association. If this flag is true, then the identifier of this entity should 062 * also be used as the foreign key to the related parent entity. 063 * @return boolean 064 */ 065 public boolean isForeignIdentifier(); 066 067 /** 068 * True if this association is an identifier for its entity. 069 * @return boolean 070 */ 071 public boolean isIdentifier(); 072 073 /** 074 * True if the associationEnd is marked with identifiers stereotype, false otherwise. 075 * @return boolean 076 */ 077 public boolean isIdentifiersPresent(); 078 079 /** 080 * Indicates this association end should be ignored by the persistence layer. 081 * @return boolean 082 */ 083 public boolean isTransient(); 084}