Class UmlBaseRelation

Manage the relations between classes

Declaration :

- C++ : class UmlBaseRelation : public UmlClassMember
- Java : abstract class UmlBaseRelation extends UmlClassMember

Directly inherited by : UmlRelation

Artifact : UmlBaseRelation

Operation create

returns a new relation of the given 'kind' from 'start' to 'end'
In case it cannot be created (the name is already used or
invalid, 'parent' cannot contain it etc ...) return 0 in C++
and produce a RuntimeException in Java

Declaration :

- Uml : static, + create(in kind : aRelationKind, inout start : UmlClass, inout end : UmlClass) : UmlRelation, exceptions : RuntimeException
- C++ : public: static UmlRelation * create(aRelationKind kind, UmlClass * start, UmlClass * end)
- Java : public static UmlRelation create(aRelationKind kind, UmlClass start, UmlClass end) throws RuntimeException

Operation kind

returns the kind of the item

Declaration :

- Uml : + kind() : anItemKind
- C++ : public: virtual anItemKind kind()
- Java : public anItemKind kind()

Operation relationKind

returns the kind of the relation

Declaration :

- Uml : + relationKind() : aRelationKind
- C++ : public: aRelationKind relationKind()
- Java : public aRelationKind relationKind()

Operation side

if 'first' is true returns the relation associated to the
first role, else the relation associated to the second
role or 0/null if the relation is uni directional

Declaration :

- Uml : + side(in first : bool) : UmlRelation
- C++ : public: UmlRelation * side(bool first)
- Java : public UmlRelation side(boolean first)

Operation isReadOnly

indicates if the relation is read only, returns TRUE if yes

Declaration :

- Uml : + isReadOnly() : bool
- C++ : public: bool isReadOnly()
- Java : public boolean isReadOnly()

Operation set_isReadOnly

to set the 'read only' state of the relation
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isReadOnly(in y : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isReadOnly(bool y)
- Java : public void set_isReadOnly(boolean y) throws RuntimeException

Operation isDerived

return the property 'derived'

Declaration :

- Uml : + isDerived() : bool
- C++ : public: bool isDerived()
- Java : public boolean isDerived()

Operation isDerivedUnion

return the property 'derived union'

Declaration :

- Uml : + isDerivedUnion() : bool
- C++ : public: bool isDerivedUnion()
- Java : public boolean isDerivedUnion()

Operation set_isDerived

Set the properties 'derived' and 'union'
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isDerived(in is_derived : bool, in is_union : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isDerived(bool is_derived, bool is_union)
- Java : public void set_isDerived(boolean is_derived, boolean is_union) throws RuntimeException

Operation isOrdered

return the property 'ordered'

Declaration :

- Uml : + isOrdered() : bool
- C++ : public: bool isOrdered()
- Java : public boolean isOrdered()

Operation set_isOrdered

set the property 'ordered'
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isOrdered(in v : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isOrdered(bool v)
- Java : public void set_isOrdered(boolean v) throws RuntimeException

Operation isUnique

return the property 'unique'

Declaration :

- Uml : + isUnique() : bool
- C++ : public: bool isUnique()
- Java : public boolean isUnique()

Operation set_isUnique

set the property 'unique'
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isUnique(in v : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isUnique(bool v)
- Java : public void set_isUnique(boolean v) throws RuntimeException

Operation defaultValue

returns the default relation value, may be an empty string

Declaration :

- Uml : + defaultValue() : string
- C++ : public: const QCString & defaultValue()
- Java : public String defaultValue()

Operation set_DefaultValue

to set the default relation value ("" allowed)
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_DefaultValue(in s : str) : bool, exceptions : RuntimeException
- C++ : public: bool set_DefaultValue(const char * s)
- Java : public void set_DefaultValue(String s) throws RuntimeException

Operation set_Stereotype

to set the stereotype
On error return FALSE in C++, produce a RuntimeException in Java
redefined in case the relation is bidirectional to set the stereotype
of the relation corresponding to the other direction

Declaration :

- Uml : + set_Stereotype(in s : string) : bool, exceptions : RuntimeException
- C++ : public: virtual bool set_Stereotype(const QCString & s)
- Java : public void set_Stereotype(String s) throws RuntimeException

Operation roleType

returns the 'end' class (the 'start' class is the parent of the relation) no set !

Declaration :

- Uml : + roleType() : UmlClass
- C++ : public: UmlClass * roleType()
- Java : public UmlClass roleType()

Operation association

return the associated class/type, may be an empty spec

Declaration :

- Uml : + association() : UmlTypeSpec
- C++ : public: UmlTypeSpec association()
- Java : public UmlTypeSpec association()

Operation set_Association

set the associated class/type, may be an empty spec
On error : return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_Association(in t : UmlTypeSpec) : bool, exceptions : RuntimeException
- C++ : public: bool set_Association(const UmlTypeSpec & t)
- Java : public void set_Association(UmlTypeSpec t) throws RuntimeException

Operation roleName

returns the name of the role

Declaration :

- Uml : + roleName() : string
- C++ : public: const QCString & roleName()
- Java : public String roleName()

Operation set_RoleName

to set the name of the role
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_RoleName(in s : str) : bool, exceptions : RuntimeException
- C++ : public: bool set_RoleName(const char * s)
- Java : public void set_RoleName(String s) throws RuntimeException

Operation multiplicity

returns the multiplicity (may be an empty string)

Declaration :

- Uml : + multiplicity() : string
- C++ : public: const QCString & multiplicity()
- Java : public String multiplicity()

Operation set_Multiplicity

to set the multiplicity
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_Multiplicity(in s : str) : bool, exceptions : RuntimeException
- C++ : public: bool set_Multiplicity(const char * s)
- Java : public void set_Multiplicity(String s) throws RuntimeException

Operation getOperation

returns the 'get' operation of the relation, or 0 if it does not exist

Declaration :

- Uml : + getOperation() : UmlOperation
- C++ : public: UmlOperation * getOperation()
- Java : public UmlOperation getOperation()

Operation addGetOperation

to generate an associated 'get' operation
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + addGetOperation() : bool, exceptions : RuntimeException
- C++ : public: bool addGetOperation()
- Java : public void addGetOperation() throws RuntimeException

Operation setOperation

returns the 'set' operation of the relation, or 0 if it does not exist

Declaration :

- Uml : + setOperation() : UmlOperation
- C++ : public: UmlOperation * setOperation()
- Java : public UmlOperation setOperation()

Operation addSetOperation

to generate an associated 'set' operation
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + addSetOperation() : bool, exceptions : RuntimeException
- C++ : public: bool addSetOperation()
- Java : public void addSetOperation() throws RuntimeException

Operation cppVirtualInheritance

indicates if the inheritance is virtual in C++, returns TRUE if yes

Declaration :

- Uml : + cppVirtualInheritance() : bool
- C++ : public: bool cppVirtualInheritance()
- Java : public boolean cppVirtualInheritance()

Operation set_CppVirtualInheritance

to set if the inheritance is virtual in C++
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_CppVirtualInheritance(in y : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_CppVirtualInheritance(bool y)
- Java : public void set_CppVirtualInheritance(boolean y) throws RuntimeException

Operation isCppMutable

Indicate if the relation is 'mutable'

Declaration :

- Uml : + isCppMutable() : bool
- C++ : public: bool isCppMutable()
- Java : public boolean isCppMutable()

Operation set_isCppMutable

Set if the relation is 'mutable'
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isCppMutable(in y : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isCppMutable(bool y)
- Java : public void set_isCppMutable(boolean y) throws RuntimeException

Operation isJavaTransient

indicates if the relation is 'transient', returns TRUE if yes

Declaration :

- Uml : + isJavaTransient() : bool
- C++ : public: bool isJavaTransient()
- Java : public boolean isJavaTransient()

Operation set_isJavaTransient

to set the 'transient' state of the relation
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isJavaTransient(in y : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isJavaTransient(bool y)
- Java : public void set_isJavaTransient(boolean y) throws RuntimeException

Operation isIdlTruncatableInheritance

indicates if the relation is 'truncatable', returns TRUE if yes
have sense only for a valuetype inheritance

Declaration :

- Uml : + isIdlTruncatableInheritance() : bool
- C++ : public: bool isIdlTruncatableInheritance()
- Java : public boolean isIdlTruncatableInheritance()

Operation set_isIdlTruncatableInheritance

to set if the inheritance is 'truncatable'
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_isIdlTruncatableInheritance(in y : bool) : bool, exceptions : RuntimeException
- C++ : public: bool set_isIdlTruncatableInheritance(bool y)
- Java : public void set_isIdlTruncatableInheritance(boolean y) throws RuntimeException

Operation idlCase

in case the relation is an IDL union's member returns the
corresponding 'case', an empty string in case it is not specified

Declaration :

- Uml : + idlCase() : string
- C++ : public: QCString idlCase()
- Java : public String idlCase()

Operation set_IdlCase

to set the 'case' even the relation is not (already) known as
an IDL union's member
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_IdlCase(inout a : UmlAttribute) : bool, exceptions : RuntimeException
- C++ : public: bool set_IdlCase(UmlAttribute * a)
- Java : public void set_IdlCase(UmlAttribute a) throws RuntimeException

Operation set_IdlCase

to set the 'case' even the relation is not (already) known as
an IDL union's member
On error return FALSE in C++, produce a RuntimeException in Java

Declaration :

- Uml : + set_IdlCase(in s : str) : bool, exceptions : RuntimeException
- C++ : public: bool set_IdlCase(const char * s)
- Java : public void set_IdlCase(String s) throws RuntimeException

Operation unload

to unload the object to free memory, it will be reloaded
automatically if needed. args unused

Declaration :

- Uml : + unload(in rec : bool, in del : bool) : void
- C++ : public: virtual void unload(bool = FALSE, bool = FALSE)
- Java : public void unload(boolean rec, boolean del)

Relation _rel_kind (<directional composition>)

Declaration :

- Uml : - _rel_kind : aRelationKind
- C++ : private: aRelationKind _rel_kind
- Java : private aRelationKind _rel_kind

Attribute _read_only

Declaration :

- Uml : - _read_only : bool
- C++ : private: bool _read_only : 1
- Java : private boolean _read_only

Attribute _derived

Declaration :

- Uml : - _derived : bool
- C++ : private: bool _derived : 1
- Java : private boolean _derived

Attribute _derived_union

Declaration :

- Uml : - _derived_union : bool
- C++ : private: bool _derived_union : 1
- Java : private boolean _derived_union

Attribute _ordered

Declaration :

- Uml : - _ordered : bool
- C++ : private: bool _ordered : 1
- Java : private boolean _ordered

Attribute _unique

Declaration :

- Uml : - _unique : bool
- C++ : private: bool _unique : 1
- Java : private boolean _unique

Attribute _cpp_virtual_inheritance

Declaration :

- Uml : - _cpp_virtual_inheritance : bool
- C++ : private: bool _cpp_virtual_inheritance : 1
- Java : private boolean _cpp_virtual_inheritance

Attribute _cpp_mutable

Declaration :

- Uml : - _cpp_mutable : bool
- C++ : private: bool _cpp_mutable : 1
- Java : private boolean _cpp_mutable

Attribute _java_transient

Declaration :

- Uml : - _java_transient : bool
- C++ : private: bool _java_transient
- Java : private boolean _java_transient

Attribute _idl_truncatable

Declaration :

- Uml : - _idl_truncatable : bool
- C++ : private: bool _idl_truncatable
- Java : private boolean _idl_truncatable

Attribute _default_value

Declaration :

- Uml : - _default_value : string
- C++ : private: QCString _default_value
- Java : private String _default_value

Relation _role_type (<unidirectional association>)

Declaration :

- Uml : - _role_type : UmlClass
- C++ : private: UmlClass * _role_type
- Java : private UmlClass _role_type

Attribute _role_name

Declaration :

- Uml : - _role_name : string
- C++ : private: QCString _role_name
- Java : private String _role_name

Attribute _multiplicity

Declaration :

- Uml : - _multiplicity : string
- C++ : private: QCString _multiplicity
- Java : private String _multiplicity

Relation _association (<directional composition>)

Declaration :

- Uml : - _association : UmlTypeSpec
- C++ : private: UmlTypeSpec _association
- Java : private UmlTypeSpec _association

Relation _get_oper (<unidirectional association>)

Declaration :

- Uml : - _get_oper : UmlOperation
- C++ : private: UmlOperation * _get_oper
- Java : private UmlOperation _get_oper

Relation _set_oper (<unidirectional association>)

Declaration :

- Uml : - _set_oper : UmlOperation
- C++ : private: UmlOperation * _set_oper
- Java : private UmlOperation _set_oper

Relation _idl_case (<unidirectional association>)

exclusive with idl_explicit_case

Declaration :

- Uml : - _idl_case : UmlAttribute
- C++ : private: UmlAttribute * _idl_case
- Java : private UmlAttribute _idl_case

Attribute _idl_explicit_case

Declaration :

- Uml : - _idl_explicit_case : string
- C++ : private: QCString _idl_explicit_case
- Java : private String _idl_explicit_case

Operation read_uml_

internal, do NOT use it

Declaration :

- Uml : # read_uml_() : void
- C++ : protected: virtual void read_uml_()
- Java : protected void read_uml_()

Operation read_cpp_

internal, do NOT use it

Declaration :

- Uml : # read_cpp_() : void
- C++ : protected: virtual void read_cpp_()
- Java : protected void read_cpp_()

Operation read_java_

internal, do NOT use it

Declaration :

- Uml : # read_java_() : void
- C++ : protected: virtual void read_java_()
- Java : protected void read_java_()

Operation read_php_

internal, do NOT use it

Declaration :

- Uml : # read_php_() : void
- C++ : protected: virtual void read_php_()
- Java : protected void read_php_()

Operation read_python_

internal, do NOT use it

Declaration :

- Uml : # read_python_() : void
- C++ : protected: virtual void read_python_()
- Java : protected void read_python_()

Operation read_idl_

internal, do NOT use it

Declaration :

- Uml : # read_idl_() : void
- C++ : protected: virtual void read_idl_()
- Java : protected void read_idl_()

Operation UmlBaseRelation

the constructor, do not call it yourself !!!!!!!!!!

Declaration :

- Uml : # UmlBaseRelation(in id : item_id, in n : string) :
- C++ : protected: UmlBaseRelation(void * id, const QCString & n)
- Java : protected UmlBaseRelation(long id, String n)

All public operations : addGetOperation , addSetOperation , apply , applyStereotype , association , children , childrenVisible , constraint , cppDecl , cppVirtualInheritance , cppVisibility , create , defaultValue , defined_ , deleteIt , description , getIdentifier , getOperation , identifier_ , idlCase , idlDecl , isClassMember , isCppMutable , isDerived , isDerivedUnion , isIdlTruncatableInheritance , isJavaTransient , isMarked , isOrdered , isReadOnly , isToolRunning , isUnique , isVolatile , isWritable , javaAnnotations , javaDecl , kind , kind , markedItems , moveAfter , multiplicity , name , parent , phpDecl , properties , propertyValue , pythonDecl , referencedBy , relationKind , roleName , roleType , set_Association , set_childrenVisible , set_Constraint , set_CppDecl , set_CppVirtualInheritance , set_CppVisibility , set_DefaultValue , set_Description , set_IdlCase , set_IdlCase , set_IdlDecl , set_isClassMember , set_isCppMutable , set_isDerived , set_isIdlTruncatableInheritance , set_isJavaTransient , set_isMarked , set_isOrdered , set_isReadOnly , set_isUnique , set_isVolatile , set_JavaAnnotations , set_JavaDecl , set_Multiplicity , set_Name , set_PhpDecl , set_PropertyValue , set_PythonDecl , set_RoleName , set_Stereotype , set_Stereotype , set_Visibility , setOperation , side , stereotype , supportFile , unload , unload , unload , visibility