umbrello 2.34.70-5524f40e1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
Public Types | Signals | Public Member Functions | Protected Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
UMLForeignKeyConstraint Class Reference

Sets up Foreign Key entity constraint information. More...

#include <foreignkeyconstraint.h>

Inheritance diagram for UMLForeignKeyConstraint:
Collaboration diagram for UMLForeignKeyConstraint:

Public Types

enum  UpdateDeleteAction {
  uda_NoAction = 0 , uda_Restrict , uda_Cascade , uda_SetNull ,
  uda_SetDefault
}
 
- Public Types inherited from UMLObject
enum  ObjectType {
  ot_Unknown = -1 , ot_UMLObject = 100 , ot_Actor , ot_UseCase ,
  ot_Package , ot_Interface , ot_Datatype , ot_Enum ,
  ot_Class , ot_Instance , ot_Association , ot_Attribute ,
  ot_Operation , ot_EnumLiteral , ot_Template , ot_Component ,
  ot_Artifact , ot_Node , ot_Stereotype , ot_Role ,
  ot_Entity , ot_EntityAttribute , ot_Folder , ot_EntityConstraint ,
  ot_UniqueConstraint , ot_ForeignKeyConstraint , ot_CheckConstraint , ot_Category ,
  ot_Port , ot_InstanceAttribute , ot_SubSystem
}
 

Signals

void sigReferencedEntityChanged ()
 
- Signals inherited from UMLObject
void modified ()
 

Public Member Functions

 UMLForeignKeyConstraint (UMLObject *parent, const QString &name, Uml::ID::Type id=Uml::ID::None)
 
 UMLForeignKeyConstraint (UMLObject *parent)
 
bool operator== (const UMLForeignKeyConstraint &rhs) const
 
virtual ~UMLForeignKeyConstraint ()
 
virtual void copyInto (UMLObject *lhs) const
 
virtual UMLObjectclone () const
 
QString toString (Uml::SignatureType::Enum sig=Uml::SignatureType::NoSig, bool withStereotype=false) const
 
void setReferencedEntity (UMLEntity *ent)
 
UMLEntitygetReferencedEntity () const
 
void saveToXMI (QXmlStreamWriter &writer)
 
virtual bool showPropertiesDialog (QWidget *parent=0)
 
bool addEntityAttributePair (UMLEntityAttribute *pAttr, UMLEntityAttribute *rAttr)
 
bool removeEntityAttributePair (UMLEntityAttribute *pAttr)
 
bool hasEntityAttributePair (UMLEntityAttribute *pAttr, UMLEntityAttribute *rAttr) const
 
QMap< UMLEntityAttribute *, UMLEntityAttribute * > getEntityAttributePairs ()
 
void setDeleteAction (UpdateDeleteAction uda)
 
UpdateDeleteAction getDeleteAction () const
 
void setUpdateAction (UpdateDeleteAction uda)
 
UpdateDeleteAction getUpdateAction () const
 
void clearMappings ()
 
bool resolveRef ()
 
- Public Member Functions inherited from UMLEntityConstraint
 UMLEntityConstraint (UMLObject *parent, const QString &name, Uml::ID::Type id=Uml::ID::None)
 
 UMLEntityConstraint (UMLObject *parent)
 
bool operator== (const UMLEntityConstraint &rhs) const
 
virtual ~UMLEntityConstraint ()
 
- Public Member Functions inherited from UMLClassifierListItem
 UMLClassifierListItem (UMLObject *parent, const QString &name, Uml::ID::Type id=Uml::ID::None)
 
 UMLClassifierListItem (UMLObject *parent)
 
virtual ~UMLClassifierListItem ()
 
virtual void setType (UMLObject *type)
 
UMLClassifiergetType () const
 
void setTypeName (const QString &type)
 
virtual QString getTypeName () const
 
- Public Member Functions inherited from UMLObject
 UMLObject (const UMLObject &other)
 
 UMLObject (UMLObject *parent, const QString &name, Uml::ID::Type id=Uml::ID::None)
 
 UMLObject (UMLObject *parent)
 
 UMLObject (const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
 
virtual ~UMLObject ()
 
bool operator== (const UMLObject &rhs) const
 
virtual void setBaseType (ObjectType ot)
 
ObjectType baseType () const
 
QLatin1String baseTypeStr () const
 
virtual void setID (Uml::ID::Type NewID)
 
virtual Uml::ID::Type id () const
 
QString doc () const
 
bool hasDoc () const
 
void setDoc (const QString &d)
 
void setVisibility (Uml::Visibility::Enum visibility)
 
void setVisibilityCmd (Uml::Visibility::Enum visibility)
 
Uml::Visibility::Enum visibility () const
 
void setStereotype (const QString &_name)
 
void setStereotypeCmd (const QString &_name)
 
QString stereotype (bool includeAdornments=false) const
 
void setUMLStereotype (UMLStereotype *stereo)
 
UMLStereotypeumlStereotype () const
 
QStringList & tags ()
 
QString package (const QString &separator=QString(), bool includeRoot=false) const
 
UMLPackageList packages (bool includeRoot=false) const
 
bool setUMLPackage (UMLPackage *pPkg)
 
UMLPackageumlPackage () const
 
void setUMLParent (UMLObject *parent)
 
UMLObjectumlParent () const
 
virtual void setName (const QString &strName)
 
virtual void setNameCmd (const QString &strName)
 
QString name () const
 
virtual QString fullyQualifiedName (const QString &separator=QString(), bool includeRoot=false) const
 
void setAbstract (bool bAbstract)
 
bool isAbstract () const
 
virtual bool loadFromXMI (QDomElement &element)
 
bool loadStereotype (QDomElement &element)
 
void setStatic (bool bStatic)
 
bool isStatic () const
 
virtual bool acceptAssociationType (Uml::AssociationType::Enum) const
 
void setSecondaryId (const QString &id)
 
QString secondaryId () const
 
void setSecondaryFallback (const QString &id)
 
QString secondaryFallback () const
 
void save1 (QXmlStreamWriter &writer, const QString &type, const QString &tag=QString())
 
bool isUMLActor () const
 
bool isUMLArtifact () const
 
bool isUMLAssociation () const
 
bool isUMLAttribute () const
 
bool isUMLCategory () const
 
bool isUMLCheckConstraint () const
 
bool isUMLClassifier () const
 
bool isUMLComponent () const
 
bool isUMLDatatype () const
 
bool isUMLEntity () const
 
bool isUMLEntityAttribute () const
 
bool isUMLEntityConstraint () const
 
bool isUMLEnum () const
 
bool isUMLEnumLiteral () const
 
bool isUMLFolder () const
 
bool isUMLForeignKeyConstraint () const
 
bool isUMLInstance () const
 
bool isUMLInstanceAttribute () const
 
bool isUMLNode () const
 
bool isUMLObject () const
 
bool isUMLOperation () const
 
bool isUMLPackage () const
 
bool isUMLPort () const
 
bool isUMLRole () const
 
bool isUMLStereotype () const
 
bool isUMLTemplate () const
 
bool isUMLUniqueConstraint () const
 
bool isUMLUseCase () const
 
UMLActorasUMLActor ()
 
UMLArtifactasUMLArtifact ()
 
UMLAssociationasUMLAssociation ()
 
UMLAttributeasUMLAttribute ()
 
UMLCanvasObjectasUMLCanvasObject ()
 
UMLCategoryasUMLCategory ()
 
UMLCheckConstraintasUMLCheckConstraint ()
 
UMLClassifierasUMLClassifier ()
 
UMLClassifierListItemasUMLClassifierListItem ()
 
UMLClassifierSetasUMLClassifierSet ()
 
UMLComponentasUMLComponent ()
 
UMLDatatypeasUMLDatatype ()
 
UMLEntityasUMLEntity ()
 
UMLEntityAttributeasUMLEntityAttribute ()
 
UMLEntityConstraintasUMLEntityConstraint ()
 
UMLEnumasUMLEnum ()
 
UMLEnumLiteralasUMLEnumLiteral ()
 
UMLFolderasUMLFolder ()
 
UMLForeignKeyConstraintasUMLForeignKeyConstraint ()
 
UMLInstanceasUMLInstance ()
 
UMLInstanceAttributeasUMLInstanceAttribute ()
 
UMLNodeasUMLNode ()
 
UMLObjectasUMLObject ()
 
UMLOperationasUMLOperation ()
 
UMLPackageasUMLPackage ()
 
UMLPortasUMLPort ()
 
UMLRoleasUMLRole ()
 
UMLStereotypeasUMLStereotype ()
 
UMLTemplateasUMLTemplate ()
 
UMLUniqueConstraintasUMLUniqueConstraint ()
 
UMLUseCaseasUMLUseCase ()
 
const UMLActorasUMLActor () const
 
const UMLArtifactasUMLArtifact () const
 
const UMLAssociationasUMLAssociation () const
 
const UMLAttributeasUMLAttribute () const
 
const UMLCanvasObjectasUMLCanvasObject () const
 
const UMLCategoryasUMLCategory () const
 
const UMLCheckConstraintasUMLCheckConstraint () const
 
const UMLClassifierasUMLClassifier () const
 
const UMLClassifierListItemasUMLClassifierListItem () const
 
const UMLClassifierSetasUMLClassifierSet () const
 
const UMLComponentasUMLComponent () const
 
const UMLDatatypeasUMLDatatype () const
 
const UMLEntityasUMLEntity () const
 
const UMLEntityAttributeasUMLEntityAttribute () const
 
const UMLEntityConstraintasUMLEntityConstraint () const
 
const UMLEnumasUMLEnum () const
 
const UMLEnumLiteralasUMLEnumLiteral () const
 
const UMLFolderasUMLFolder () const
 
const UMLForeignKeyConstraintasUMLForeignKeyConstraint () const
 
const UMLInstanceasUMLInstance () const
 
const UMLInstanceAttributeasUMLInstanceAttribute () const
 
const UMLNodeasUMLNode () const
 
const UMLObjectasUMLObject () const
 
const UMLOperationasUMLOperation () const
 
const UMLPackageasUMLPackage () const
 
const UMLPortasUMLPort () const
 
const UMLRoleasUMLRole () const
 
const UMLStereotypeasUMLStereotype () const
 
const UMLTemplateasUMLTemplate () const
 
const UMLUniqueConstraintasUMLUniqueConstraint () const
 
const UMLUseCaseasUMLUseCase () const
 

Protected Member Functions

bool load1 (QDomElement &element)
 
- Protected Member Functions inherited from UMLObject
void init ()
 
void maybeSignalObjectCreated ()
 
void save1end (QXmlStreamWriter &writer)
 

Private Slots

void slotReferencedEntityChanged ()
 

Private Member Functions

void init ()
 

Private Attributes

Uml::ID::Type m_pReferencedEntityID
 Used to resolve forward references to UMLEntity. More...
 
QMap< UMLEntityAttribute *, Uml::ID::Typem_pEntityAttributeIDMap
 
UMLEntitym_ReferencedEntity
 The UMLEntity that this foreign key references. More...
 
QMap< UMLEntityAttribute *, UMLEntityAttribute * > m_AttributeMap
 
UpdateDeleteAction m_UpdateAction
 What to do on Update of referenced attributes. More...
 
UpdateDeleteAction m_DeleteAction
 What to do on Deletion of referenced attributes. More...
 

Additional Inherited Members

- Public Slots inherited from UMLObject
void emitModified ()
 
- Static Public Member Functions inherited from UMLObject
static QString toString (ObjectType ot)
 
static QString toI18nString (ObjectType t)
 
static Icon_Utils::IconType toIcon (ObjectType t)
 
- Protected Attributes inherited from UMLObject
Uml::ID::Type m_nId
 object's id More...
 
QString m_Doc
 object's documentation More...
 
QPointer< UMLStereotypem_pStereotype
 stereotype of the object if applicable More...
 
QString m_name
 objects name More...
 
ObjectType m_BaseType
 objects type More...
 
Uml::Visibility::Enum m_visibility
 objects visibility More...
 
bool m_bAbstract
 state of whether the object is abstract or not More...
 
bool m_bStatic
 flag for instance scope More...
 
bool m_bCreationWasSignalled
 auxiliary to maybeSignalObjectCreated() More...
 
QPointer< UMLObjectm_pSecondary
 
QString m_SecondaryId
 
QString m_SecondaryFallback
 
QStringList m_TaggedValues
 
UMLObjectPrivatem_d
 private data More...
 

Detailed Description

Sets up Foreign Key entity constraint information.

This class is used to set up information for a foreign key entity constraint.

Author
Sharan Rao
See also
UMLObject UMLClassifierListItem UMLEntityConstraint Bugs and comments to umbre.nosp@m.llo-.nosp@m.devel.nosp@m.@kde.nosp@m..org or https://bugs.kde.org

Member Enumeration Documentation

◆ UpdateDeleteAction

Update/Delete Action: Action to be taken on Update or Delete of a referenced attribute is either, No Action, Restrict, Cascade, Set NULL, Set Default.

Enumerator
uda_NoAction 
uda_Restrict 
uda_Cascade 
uda_SetNull 
uda_SetDefault 

Constructor & Destructor Documentation

◆ UMLForeignKeyConstraint() [1/2]

UMLForeignKeyConstraint::UMLForeignKeyConstraint ( UMLObject parent,
const QString &  name,
Uml::ID::Type  id = Uml::ID::None 
)

Sets up a constraint.

Parameters
parentThe parent of this UMLForeignKeyConstraint.
nameThe name of this UMLForeignKeyConstraint.
idThe unique id given to this UMLForeignKeyConstraint.
Here is the call graph for this function:

◆ UMLForeignKeyConstraint() [2/2]

UMLForeignKeyConstraint::UMLForeignKeyConstraint ( UMLObject parent)
explicit

Sets up a constraint.

Parameters
parentThe parent of this UMLForeignKeyConstraint.
Here is the call graph for this function:

◆ ~UMLForeignKeyConstraint()

UMLForeignKeyConstraint::~UMLForeignKeyConstraint ( )
virtual

Destructor.

Member Function Documentation

◆ addEntityAttributePair()

bool UMLForeignKeyConstraint::addEntityAttributePair ( UMLEntityAttribute pAttr,
UMLEntityAttribute rAttr 
)

Adds the attribute pair to the attributeMap

Parameters
pAttrThe Attribute of the Parent Entity
rAttrThe Attribute of the Referenced Entity
Returns
true if the attribute pair could be added successfully
Here is the call graph for this function:

◆ clearMappings()

void UMLForeignKeyConstraint::clearMappings ( )

Clears all mappings between local and referenced attributes

◆ clone()

UMLObject * UMLForeignKeyConstraint::clone ( ) const
virtual

Make a clone of the UMLForeignKeyConstraint.

Implements UMLEntityConstraint.

Here is the call graph for this function:

◆ copyInto()

void UMLForeignKeyConstraint::copyInto ( UMLObject lhs) const
virtual

Copy the internal presentation of this object into the UMLForeignKeyConstraint object.

Reimplemented from UMLEntityConstraint.

Here is the call graph for this function:

◆ getDeleteAction()

UMLForeignKeyConstraint::UpdateDeleteAction UMLForeignKeyConstraint::getDeleteAction ( ) const

Get the Delete Action.

◆ getEntityAttributePairs()

QMap< UMLEntityAttribute *, UMLEntityAttribute * > UMLForeignKeyConstraint::getEntityAttributePairs ( )

Retrieve all Pairs of Attributes.

◆ getReferencedEntity()

UMLEntity * UMLForeignKeyConstraint::getReferencedEntity ( ) const

Get the Referenced Entity.

Returns
the UML entity object

◆ getUpdateAction()

UMLForeignKeyConstraint::UpdateDeleteAction UMLForeignKeyConstraint::getUpdateAction ( ) const

Get the Update Action.

◆ hasEntityAttributePair()

bool UMLForeignKeyConstraint::hasEntityAttributePair ( UMLEntityAttribute pAttr,
UMLEntityAttribute rAttr 
) const

Check if an attribute pair already exists

Parameters
pAttrThe Attribute of the Parent Entity
rAttrThe Attribute of the Referenced Entity
Returns
true if the attribute pair could be found.

◆ init()

void UMLForeignKeyConstraint::init ( )
private

Initialisation of common variables

Here is the call graph for this function:

◆ load1()

bool UMLForeignKeyConstraint::load1 ( QDomElement &  element)
protectedvirtual

Loads the <UML:ForeignKeyConstraint> XMI element.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ operator==()

bool UMLForeignKeyConstraint::operator== ( const UMLForeignKeyConstraint rhs) const

Overloaded '==' operator

◆ removeEntityAttributePair()

bool UMLForeignKeyConstraint::removeEntityAttributePair ( UMLEntityAttribute pAttr)

Removes an Attribute pair

Parameters
pAttrThe Attribute of the Parent Entity in the map. This attribute is the key of the map.
Returns
true of the attribute pair could be removed successfully

◆ resolveRef()

bool UMLForeignKeyConstraint::resolveRef ( )
virtual

Remimplementation from base classes Used to resolve forward references to referenced entities in xmi

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ saveToXMI()

void UMLForeignKeyConstraint::saveToXMI ( QXmlStreamWriter &  writer)
virtual

Creates the <UML:ForeignKeyConstraint> XMI element.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ setDeleteAction()

void UMLForeignKeyConstraint::setDeleteAction ( UpdateDeleteAction  uda)

Set the Delete Action to the specified UpdateDeleteAction.

◆ setReferencedEntity()

void UMLForeignKeyConstraint::setReferencedEntity ( UMLEntity ent)

Set the Referenced Entity.

Parameters
entThe Entity to Reference

◆ setUpdateAction()

void UMLForeignKeyConstraint::setUpdateAction ( UpdateDeleteAction  uda)

Set the Update Action to the specified UpdateDeleteAction

◆ showPropertiesDialog()

bool UMLForeignKeyConstraint::showPropertiesDialog ( QWidget *  parent = 0)
virtual

Display the properties configuration dialog for the attribute.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ sigReferencedEntityChanged

void UMLForeignKeyConstraint::sigReferencedEntityChanged ( )
signal

◆ slotReferencedEntityChanged

void UMLForeignKeyConstraint::slotReferencedEntityChanged ( )
privateslot

Slot for referenced entity changed.

◆ toString()

QString UMLForeignKeyConstraint::toString ( Uml::SignatureType::Enum  sig = Uml::SignatureType::NoSig,
bool  withStereotype = false 
) const
virtual

Returns a string representation of the UMLForeignKeyConstraint.

Parameters
sigIf true will show the attribute type and initial value.
Returns
Returns a string representation of the UMLAttribute.

Reimplemented from UMLClassifierListItem.

Here is the call graph for this function:

Member Data Documentation

◆ m_AttributeMap

QMap<UMLEntityAttribute*, UMLEntityAttribute*> UMLForeignKeyConstraint::m_AttributeMap
private

Stores the Mapping of attributes between parent table and referenced table

◆ m_DeleteAction

UpdateDeleteAction UMLForeignKeyConstraint::m_DeleteAction
private

What to do on Deletion of referenced attributes.

◆ m_pEntityAttributeIDMap

QMap<UMLEntityAttribute*, Uml::ID::Type> UMLForeignKeyConstraint::m_pEntityAttributeIDMap
private

Used to resolve forward references to UMLEntityAttributes Key -> The local attribute Value -> Id of the attribute it is mapping to

◆ m_pReferencedEntityID

Uml::ID::Type UMLForeignKeyConstraint::m_pReferencedEntityID
private

Used to resolve forward references to UMLEntity.

◆ m_ReferencedEntity

UMLEntity* UMLForeignKeyConstraint::m_ReferencedEntity
private

The UMLEntity that this foreign key references.

◆ m_UpdateAction

UpdateDeleteAction UMLForeignKeyConstraint::m_UpdateAction
private

What to do on Update of referenced attributes.


The documentation for this class was generated from the following files: