Package de.mid.innovator.srv2api.icw2er
Interface ERForeignKey
-
- All Superinterfaces:
ADClientAble
,ADFindAble
,ADHistoryAble
,ADM2AttrModifyAble
,ELContainerAble
,ELContAsgnAble
,ELDeleteAble
,ELElement
,ELNamedElement
,ELNamespaceAsgnAble
,ELObject
,ELShortNameAble
,ELUUIDAble
,ELValueContainerAble
,IMKey
,IMKeyRelationship
,MECommentAble
,MEConstraintAble
,MEModelElement
,MENamedElement
,MENamespaceAsgnAble
,MEStereotypeAble
,MMAttachmentAble
,MMCommentContainerAble
,MMLabelAble
,MMLabelTextAttachmentAble
,MMStereotypeAble
,MMTextAble
public interface ERForeignKey extends IMKeyRelationship, ELShortNameAble
AERForeignKey
is a collection of attributes of itsEREntity
. The foreign key normally implements a relationship by referencing anERUniqueKey
.- See Also:
ERForeignKeyHelper
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ERForeignKey.VAttr
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IMForeignKeyAble
getForeignKeyAble()
Reference to the foreign key inducing element (generalization or relationship role of the foreign key).ERGeneralizationSet
getGeneralizationSet()
Reference to theERGeneralizationSet
for which this foreign key is created.EREntity
getOwningEntity()
Reference to the entity of the foreign key.ERRelationship
getRelationship()
Reference to theERRelationship
for which this foreign key is created.EREntity
getUniqueKeyEntity()
java.util.List<MEStereotypeAble>
maintain()
Runs all maintaining methods for this foreign key in the following order:
maintainAssignForeignKeyAble(...)
IMForeignKeyAble
maintainAssignForeignKeyAble()
This maintaining method assigns (if not yet assigned) this foreign key to an appropriate role or generalization.
This foreign key's entity shall be known as the FK entity and the referenced unique key's entity as the UK entity.
The first step is to search a generalization which has the FK entity as the specializing entity and the UK entity as the general entity.java.util.List<IMKeyRelationshipFeature>
maintainCreateForeignAttributes()
This maintaining method creates the missed foreign key attributes.IMForeignKeyAble
maintainCreateRelationship()
If theERForeignKey
is not yet assigned to anIMForeignKeyAble
(role or generalization), anERRelationship
will be created for this foreign key.
Returns the role on the unique key side of the newly-created relationship or null.java.util.List<MEStereotypeAble>
maintainHierarchicalPrimaryKey()
This method maintains the primary key of the entity of this foreign key, if the foreign key is assigned to a hierarchical relationship.
A hierarchical relationship is either a generalization or a relationship with a weak entity.
All attributes of this foreign key should be part of the primary key in the same entity, unless a primary key with an attribute which is not part of this foreign key already exists.
If necessary, a primary key will be created.void
maintainNotnull()
This maintaining method sets the not null property of the foreign key attributes according to the assigned role.void
setForeignKeyAble(IMForeignKeyAble value)
Set the value of Foreign Key ForeignKeyAble.void
setGeneralizationSet(ERGeneralizationSet value)
Set the value of View GeneralizationSet.void
setRelationship(ERRelationship value)
Set the value of View Relationship.-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.ADClientAble
getAnnotation, getEndAnalysisDia, getLogic, getLogic, getPresentationContext, getSection, getStartAnalysisDia
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.ADHistoryAble
getCreateTime, getCreator, getHistory, getModifier, getModifyTime, modifyHistory, setHistory
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.ADM2AttrModifyAble
getTabCell, getTabCellObjectList, getTabCreateTemplate, getTabCreateTemplateObjectList, getTabElement, getTabElementRowList, getTabElementRowTypeList, getTabRowList, tabCellModify, tabCreateTemplate, tabElementModify
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELContainerAble
getClientDependency, getOwnedElement, getOwnedElementTransitiveDown, getOwnedElementTransitiveDown, getOwnedElementTransitiveDownAndUnresolved, getOwnedElementTransitiveDownAndUnresolved, getOwnedOrReferencedElementTransitiveDown, getOwnedOrReferencedElementTransitiveDown, getOwnedRelshipBinDirWithTarget, getOwnedRelshipBinDirWithTarget, getRedirectedModelContainer, getRelshipBinDirSource, getSelfAndOwnedElementTransitiveDown, getSelfAndOwnedElementTransitiveDown, getSortedContents, sortContents
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELContAsgnAble
getAsgnKind, getContSortOrder, getFirstOwnerWhichIsConformTo, getOwner, getOwnerTransitive, getOwnerTransitive, getSelfAndOwnerTransitive, getSelfAndOwnerTransitive, getVersionRoot, isTransitiveChildOf, setAsgnKind, setContSortOrder, setOwner
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELDeleteAble
delete
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELElement
duplicateElement, getAssignAbleToVattr, getAssignAbleToVattr, getClientId, getCreateTemplateOfInstance, getDisplayBitmap, getDisplayColor, getDisplayFont, getDisplayLine, getDisplayName, getDisplayNameShort, getDisplayNSName, getElementCache, getElementMappingInformation, getQualifiedNamespaceName, getRelshipBinDir, getRelshipBinDir, getRelshipBinDirTarget, getUnitToLock, getValSpecElement, isContainedInProfile, isUnresolved, lockUnit, setUnresolved, unlockUnit
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELNamedElement
getName, getNameKind, getQualifiedDisplayName, getQualifiedName, getQualifiedTLName, getSupplierDependency, rename, setName, setNameKind
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELNamespaceAsgnAble
getMnClassicTREFName, getNamespace, getNamespaceName, getPath, getSeparator, getVisibility, setUniqueName, setVisibility
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELObject
getId, getLongId, getMetaClass, getMetaName, getOclClass, getSrvCon, hasRead
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELShortNameAble
getShortName, setShortName
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELUUIDAble
getHyperlinkReferenceAble, getNotToTranslateAttribute, getTranslatedValue, getUUID, setUUID
-
Methods inherited from interface de.mid.innovator.srv2api.icw2elem.ELValueContainerAble
getValueReUseAble, setValueReUseAble
-
Methods inherited from interface de.mid.innovator.srv2api.icw2im.IMKey
getAddableProperty, getAddableProperty, getFeatureNames, getOwnedKeyFeature, getOwningClassifier, getProperty, getProperty, hasNullProperty, isCompleteInView, setFeatureNames, setNull
-
Methods inherited from interface de.mid.innovator.srv2api.icw2im.IMKeyRelationship
getJoinExpressionFlow, getKeyClassifier, getKeyClassifier, getOwnedKeyRelationshipFeature, getUniqueKey, getUniqueKeyClassifier, getViewFrom, isIdentifying, isMaxOne, isOptional, maintainDeleteForeignProperties, setUniqueKey
-
Methods inherited from interface de.mid.innovator.srv2api.icw2model.MECommentAble
getAssignedComment, getAssignedComment, getCommentAssign
-
Methods inherited from interface de.mid.innovator.srv2api.icw2model.MEConstraintAble
getAssignedConstraint, getAssignedConstraint, getConstraintAssign
-
Methods inherited from interface de.mid.innovator.srv2api.icw2model.MEModelElement
buildProxyConnection, getActivityPartition, getConsider, getContentStereotypeByClass, getCreateTemplateByClass, getElementColor, getFirstValidContentStereotype, getIgnore, getKnownTypeSystems, getMEModelName, getModelElement, getModelElement, getPresContext, getPresContext, getPresetMapping, getPRPresContent, setElementColor
-
Methods inherited from interface de.mid.innovator.srv2api.icw2model.MENamedElement
getMappingSourceElement, getMappingSourceElement, getMESupplierDependency, getMESupplierMappingDependency
-
Methods inherited from interface de.mid.innovator.srv2api.icw2model.MENamespaceAsgnAble
getMENamespace, getSignatureMessage
-
Methods inherited from interface de.mid.innovator.srv2api.icw2model.MEStereotypeAble
getApplicableAnalysisDia, getClientMappingDependency, getDecisionMade, getDecisionOwned, getKnowledgeSourceOfOwner, getMappingTargetElement, getMappingTargetElement, getProxyAsgProperty, getRepresentingArtifact, getRequirementOfStakeholder, getRequirementOfStakeholderOwner, isMapped, setMapped, setRequirementOfStakeholder
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.MMAttachmentAble
getAssignedAttachment, getAttachmentAssign, getDefaultAttachment, getOwnedAttachment, setDefaultAttachment
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.MMCommentContainerAble
getOutgoingConceptRealization, getOwnedComment, getRealizedConcept, getRealizedConcept, replaceRealizedConcepts, setRealizedConcept
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.MMLabelAble
getLabel, getLabelBoolValue, getLabelColor, getLabelInfo, getLabelLongValue, getLabelNameValue, getLabelStringValue, getLabelValueByPattern, getLabelValueByPattern, getLabelValueList, getOwnedLabelValSpec, hasLabel, modifyLabelValuesByName, setLabelInfo
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.MMStereotypeAble
assignStereotypeDlg, cloneElement, completelySynchronizeOthers, completelySynchronizeThis, getAttrCnstrEffective, getCreateTemplate, getDisplayType, getOwnedFormat, getOwnedStereotypePropertyValSpec, getOwnedStereotypeTSOptionValSpec, getOwnedSyncedElement, getPropBoolValue, getPropLongValue, getPropStringValue, getPropValueList, getStereoPropValueByPattern, getStereoPropValueByPattern, getStereotype, getStereotypeName, getStereotypeProperty, getStereotypePropertyInfo, getStereotypePropertyNameValue, getStereotypeTSOption, getStereotypeTSOptionBoolValue, getStereotypeTSOptionInfo, getStereotypeTSOptionLongValue, getStereotypeTSOptionNameValue, getStereotypeTSOptionStringValue, getStereotypeTSOptionValueByPattern, getStereotypeTSOptionValueByPattern, getStereotypeTSOptionValueList, getSyncedElement, getSyncedStereotypeAble, getSyncedStereotypeAble, isCloneAbleElement, modifyStereotypePropertyValuesByName, modifyStereotypeTSOptionValuesByName, setStereotype, setStereotypePropertyInfo, setStereotypeTSOptionInfo, setSyncedStereotypeAble
-
Methods inherited from interface de.mid.innovator.srv2api.icw2meta.MMTextAble
getFlowExpandedValue, getModifyFlowDocuments, getModifyTextValues, getModifyTextValuesDlgInit, getOwnedTextValue, getOwnedTextValueByPattern, getTextExpandedValue, getTextStringValue, getURIList, modifyFlowDocuments, modifyTextValuesDlg
-
-
-
-
Method Detail
-
getRelationship
ERRelationship getRelationship() throws InoNetException, SrvErrorException
Reference to theERRelationship
for which this foreign key is created.- Throws:
InoNetException
SrvErrorException
-
setRelationship
void setRelationship(ERRelationship value) throws InoNetException, SrvErrorException
Set the value of View Relationship.- Parameters:
value
- The value to be set.- Throws:
InoNetException
SrvErrorException
-
getGeneralizationSet
ERGeneralizationSet getGeneralizationSet() throws InoNetException, SrvErrorException
Reference to theERGeneralizationSet
for which this foreign key is created.- Throws:
InoNetException
SrvErrorException
-
setGeneralizationSet
void setGeneralizationSet(ERGeneralizationSet value) throws InoNetException, SrvErrorException
Set the value of View GeneralizationSet.- Parameters:
value
- The value to be set.- Throws:
InoNetException
SrvErrorException
-
maintainAssignForeignKeyAble
IMForeignKeyAble maintainAssignForeignKeyAble() throws InoNetException, SrvErrorException
This maintaining method assigns (if not yet assigned) this foreign key to an appropriate role or generalization.
This foreign key's entity shall be known as the FK entity and the referenced unique key's entity as the UK entity.
The first step is to search a generalization which has the FK entity as the specializing entity and the UK entity as the general entity. This generalization must not already have a foreign key in the FK entity. If such a generalization were not found, the next thing to try is to find a role. The role must be a part of a relationship between the FK and UK entity. The FK entity must be the owner of this role. This indicates the foreign key side of a relationship. This role must not already have a foreign key in the FK entity.
If either a generalization or role is found, assign it to this foreign key.
Returns the newly assigned generalization or role.- Throws:
InoNetException
SrvErrorException
-
maintain
java.util.List<MEStereotypeAble> maintain() throws InoNetException, SrvErrorException
Runs all maintaining methods for this foreign key in the following order:
maintainAssignForeignKeyAble(...) maintainCreateForeignAttributes(...) maintainHierarchicalPrimaryKey(...)
- Throws:
InoNetException
SrvErrorException
-
maintainCreateForeignAttributes
java.util.List<IMKeyRelationshipFeature> maintainCreateForeignAttributes() throws InoNetException, SrvErrorException
This maintaining method creates the missed foreign key attributes. It looks to the unique key referenced by this foreign key. For all unique key features which have not got a referencing key relationship feature in this foreign key, a new attribute will be created and assigned to this foreign key.
If this foreign key does not have any key relationship features to start with, the sort order of a new key relationship feature will be equal to its referenced unique key feature.
Returns the list of the created key relationship features.- Throws:
InoNetException
SrvErrorException
-
maintainCreateRelationship
IMForeignKeyAble maintainCreateRelationship() throws InoNetException, SrvErrorException
If theERForeignKey
is not yet assigned to anIMForeignKeyAble
(role or generalization), anERRelationship
will be created for this foreign key.
Returns the role on the unique key side of the newly-created relationship or null.- Throws:
InoNetException
SrvErrorException
-
maintainHierarchicalPrimaryKey
java.util.List<MEStereotypeAble> maintainHierarchicalPrimaryKey() throws InoNetException, SrvErrorException
This method maintains the primary key of the entity of this foreign key, if the foreign key is assigned to a hierarchical relationship.
A hierarchical relationship is either a generalization or a relationship with a weak entity.
All attributes of this foreign key should be part of the primary key in the same entity, unless a primary key with an attribute which is not part of this foreign key already exists.
If necessary, a primary key will be created. The foreign attributes will be assigned to the primary key.
Returns a list of created elements. These can be the primary key (always returned as first element) and the created unique key features.- Throws:
InoNetException
SrvErrorException
-
maintainNotnull
void maintainNotnull() throws InoNetException, SrvErrorException
This maintaining method sets the not null property of the foreign key attributes according to the assigned role.- Throws:
InoNetException
SrvErrorException
-
getUniqueKeyEntity
EREntity getUniqueKeyEntity() throws InoNetException, SrvErrorException
- Throws:
InoNetException
SrvErrorException
-
getForeignKeyAble
IMForeignKeyAble getForeignKeyAble() throws InoNetException, SrvErrorException
Reference to the foreign key inducing element (generalization or relationship role of the foreign key).- Throws:
InoNetException
SrvErrorException
-
setForeignKeyAble
void setForeignKeyAble(IMForeignKeyAble value) throws InoNetException, SrvErrorException
Set the value of Foreign Key ForeignKeyAble.- Parameters:
value
- The value to be set.- Throws:
InoNetException
SrvErrorException
-
getOwningEntity
EREntity getOwningEntity() throws InoNetException, SrvErrorException
Reference to the entity of the foreign key.- Throws:
InoNetException
SrvErrorException
-
-