Class UmlBaseRelation

Declaration :

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

Directly inherited by : UmlRelation

Manage the relations between classes

Artifact : UmlBaseRelation

Operation create

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

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

Operation kind

Declaration :

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

returns the kind of the item

Operation relationKind

Declaration :

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

returns the kind of the relation

Operation side

Declaration :

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

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

Operation isReadOnly

Declaration :

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

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

Operation set_isReadOnly

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

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

Operation defaultValue

Declaration :

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

returns the default relation value, may be an empty string

Operation set_DefaultValue

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

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

Operation set_Stereotype

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

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

Operation roleType

Declaration :

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

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

Operation association

Declaration :

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

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

Operation set_Association

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

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

Operation roleName

Declaration :

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

returns the name of the role

Operation set_RoleName

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

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

Operation multiplicity

Declaration :

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

returns the multiplicity (may be an empty string)

Operation set_Multiplicity

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

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

Operation getOperation

Declaration :

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

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

Operation addGetOperation

Declaration :

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

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

Operation setOperation

Declaration :

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

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

Operation addSetOperation

Declaration :

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

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

Operation cppVirtualInheritance

Declaration :

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

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

Operation set_CppVirtualInheritance

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

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

Operation isCppMutable

Declaration :

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

Indicate if the relation is 'mutable'

Operation set_isCppMutable

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

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

Operation isJavaTransient

Declaration :

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

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

Operation set_isJavaTransient

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

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

Operation isIdlTruncatableInheritance

Declaration :

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

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

Operation set_isIdlTruncatableInheritance

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

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

Operation idlCase

Declaration :

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

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

Operation set_IdlCase

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

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

Operation set_IdlCase

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

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

Operation unload

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)

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

Attribut _read_only

Declaration :

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

Attribut _cpp_virtual_inheritance

Declaration :

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

Attribut _cpp_mutable

Declaration :

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

Attribut _java_transient

Declaration :

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

Attribut _idl_truncatable

Declaration :

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

Relation _rel_kind (<directional aggregation by value>)

Declaration :

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

Attribut _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

Attribut _role_name

Declaration :

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

Attribut _multiplicity

Declaration :

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

Relation _association (<directional aggregation by value>)

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>)

Declaration :

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

exclusive with idl_explicit_case

Attribut _idl_explicit_case

Declaration :

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

Operation read_uml_

Declaration :

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

internal, do NOT use it

Operation read_cpp_

Declaration :

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

internal, do NOT use it

Operation read_java_

Declaration :

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

internal, do NOT use it

Operation read_idl_

Declaration :

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

internal, do NOT use it

Operation UmlBaseRelation

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)

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

All public operations : addGetOperation , addSetOperation , apply , association , children , childrenVisible , constraint , cppDecl , cppVirtualInheritance , cppVisibility , create , defaultValue , defined_ , deleteIt , description , getIdentifier , getOperation , identifier_ , idlCase , idlDecl , isClassMember , isCppMutable , isIdlTruncatableInheritance , isJavaTransient , isMarked , isReadOnly , isToolRunning , isVolatile , isWritable , javaAnnotations , javaDecl , kind , kind , markedItems , moveAfter , multiplicity , name , parent , properties , propertyValue , 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_isIdlTruncatableInheritance , set_isJavaTransient , set_isMarked , set_isReadOnly , set_isVolatile , set_JavaAnnotations , set_JavaDecl , set_Multiplicity , set_Name , set_PropertyValue , set_RoleName , set_Stereotype , set_Stereotype , set_Visibility , setOperation , side , stereotype , supportFile , unload , unload , unload , visibility