org.opencrx.kernel.model1.jpa3
Class AssociationEnd

java.lang.Object
  extended by org.w3c.jpa3.AbstractObject
      extended by org.opencrx.kernel.model1.jpa3.Element
          extended by org.opencrx.kernel.model1.jpa3.AssociationEnd
All Implemented Interfaces:
Serializable, AlertSender, Auditee, Cloneable, Exporter, Importer, Indexed, SecureObject, CrxObject, LocalizedFieldContainer, AssociationEnd, Element, TypedElement, BasicObject, ContextCapable, Creatable, ExtentCapable, Modifiable

public class AssociationEnd
extends Element
implements AssociationEnd

Class AssociationEnd

An association is composed of two AssociationEnds. Each AssociationEnd defines a Classifier participant in the Association, the role it plays, and constraints on sets of the Classifier instances participating. An instance of an AssociationEnd is a LinkEnd, which defines a relationship between a link, in instance of an Association, and an instance of the AssociationEnd's Classifier, provided in its type attribute.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.w3c.jpa3.AbstractObject
AbstractObject.AbstractStateAccessor, AbstractObject.EmbeddedList<E>, AbstractObject.EmbeddedSet<E>, AbstractObject.ObjectState, AbstractObject.SlicedList<E,S>, AbstractObject.SlicedMap<E,S>, AbstractObject.SlicedSet<E,S>
 
Nested classes/interfaces inherited from interface org.opencrx.kernel.model1.cci2.Element
Element.Identity
 
Field Summary
 
Fields inherited from class org.opencrx.kernel.model1.jpa3.Element
createdAt, identity, modifiedAt
 
Constructor Summary
AssociationEnd()
          Constructor
 
Method Summary
 short getAggregation()
          Retrieves the value for the attribute aggregation.
 short getMultiplicity()
          Retrieves the value for the attribute multiplicity.
 List<String> getQualifierName()
          Retrieves a list containing all the elements for the attribute qualifierName.
 List<String> getQualifierType_Id()
           
<T extends Classifier>
List<T>
getQualifierType()
          Retrieves the Collection of objects referenced by qualifierType.
 String getType_Id()
           
 Classifier getType()
          Retrieves the value for the reference type.
 Integer getUpperBound()
          Retrieves the possibly null value for the optional attribute upperBound.
 boolean isChangeable()
          Retrieves the value for the attribute isChangeable.
 boolean isNavigable()
          Retrieves the value for the attribute isNavigable.
 void setAggregation(short aggregation)
          Sets a new value for the attribute aggregation.
 void setChangeable(boolean isChangeable)
          Sets a new value for the attribute isChangeable.
 void setMultiplicity(short multiplicity)
          Sets a new value for the attribute multiplicity.
 void setNavigable(boolean isNavigable)
          Sets a new value for the attribute isNavigable.
 void setQualifierName(String... qualifierName)
          Clears qualifierName and adds the given value(s).
 void setType_Id(String type)
           
 void setType(Classifier type)
          Sets a new value for the reference type.
 void setUpperBound(Integer upperBound)
          Sets a new value for the attribute upperBound.
 
Methods inherited from class org.opencrx.kernel.model1.jpa3.Element
addOwningGroup, checkPermissions, clone_, exportItem, exportItemAdvanced, getAccessLevelBrowse, getAccessLevelDelete, getAccessLevelUpdate, getAdditionalExternalLink, getAnnotation, getAssignedTimer, getAttachedDocument, getAudit, getCategory, getContainer_Id, getContainer, getCreatedAt, getCreatedBy, getDisabledReason, getDocumentFolderAssignment, getElementOrder, getExternalLink, getIdentity, getIndexEntry, getLocalizedField, getMedia, getModifiedAt, getModifiedBy, getName, getNote, getOpenmdxjdoIdentity, getOwner, getOwningGroup_Id, getOwningGroup, getOwningUser_Id, getOwningUser, getPropertySet, getPropertySetEntry, getQualifiedName, getRating, getSegment_Id, getSegment, getStereotype, getUserBoolean4, getUserCode0, getUserCode1, getUserCode2, getUserCode3, getUserCode4, getUserDate0, getUserDate1, getUserDate2, getUserDate3, getUserDate4, getUserDateTime0, getUserDateTime1, getUserDateTime2, getUserDateTime3, getUserDateTime4, getUserNumber0, getUserNumber1, getUserNumber2, getUserNumber3, getUserNumber4, getUserString0, getUserString1, getUserString2, getUserString3, getUserString4, importItem, isDisabled, isUserBoolean0, isUserBoolean1, isUserBoolean2, isUserBoolean3, openmdxjdoGetSlices, removeAllOwningGroup, removeOwningGroup, replaceOwningGroup, sendAlert, setAccessLevel, setAccessLevelBrowse, setAccessLevelDelete, setAccessLevelUpdate, setAnnotation, setCategory, setContainer_Id, setContainer, setDisabled, setDisabledReason, setElementOrder, setExternalLink, setName, setOpenmdxjdoIdentity, setOwner, setOwningUser_Id, setOwningUser, setOwningUser, setQualifiedName, setSegment_Id, setSegment, setStereotype, setUserBoolean0, setUserBoolean1, setUserBoolean2, setUserBoolean3, setUserBoolean4, setUserCode0, setUserCode1, setUserCode2, setUserCode3, setUserCode4, setUserDate0, setUserDate1, setUserDate2, setUserDate3, setUserDate4, setUserDateTime0, setUserDateTime1, setUserDateTime2, setUserDateTime3, setUserDateTime4, setUserNumber0, setUserNumber1, setUserNumber2, setUserNumber3, setUserNumber4, setUserString0, setUserString1, setUserString2, setUserString3, setUserString4, updateIndex
 
Methods inherited from class org.w3c.jpa3.AbstractObject
openmdxjdoMakeDirty, openmdxjdoSetArray, openmdxjdoSetCollection, openmdxjdoToArray, openmdxjdoToArray
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.opencrx.kernel.model1.cci2.Element
getAnnotation, getContainer, getElementOrder, getName, getQualifiedName, getSegment, getStereotype, setAnnotation, setContainer, setElementOrder, setName, setQualifiedName, setStereotype
 
Methods inherited from interface org.opencrx.kernel.generic.cci2.CrxObject
getAdditionalExternalLink, getAssignedTimer, getAttachedDocument, getCategory, getDisabledReason, getDocumentFolderAssignment, getExternalLink, getMedia, getNote, getPropertySet, getPropertySetEntry, getRating, getUserBoolean4, getUserCode0, getUserCode1, getUserCode2, getUserCode3, getUserCode4, getUserDate0, getUserDate1, getUserDate2, getUserDate3, getUserDate4, getUserDateTime0, getUserDateTime1, getUserDateTime2, getUserDateTime3, getUserDateTime4, getUserNumber0, getUserNumber1, getUserNumber2, getUserNumber3, getUserNumber4, getUserString0, getUserString1, getUserString2, getUserString3, getUserString4, isDisabled, isUserBoolean0, isUserBoolean1, isUserBoolean2, isUserBoolean3, setCategory, setDisabled, setDisabledReason, setExternalLink, setUserBoolean0, setUserBoolean1, setUserBoolean2, setUserBoolean3, setUserBoolean4, setUserCode0, setUserCode1, setUserCode2, setUserCode3, setUserCode4, setUserDate0, setUserDate1, setUserDate2, setUserDate3, setUserDate4, setUserDateTime0, setUserDateTime1, setUserDateTime2, setUserDateTime3, setUserDateTime4, setUserNumber0, setUserNumber1, setUserNumber2, setUserNumber3, setUserNumber4, setUserString0, setUserString1, setUserString2, setUserString3, setUserString4
 
Methods inherited from interface org.opencrx.kernel.base.cci2.AlertSender
sendAlert
 
Methods inherited from interface org.opencrx.kernel.base.cci2.Auditee
getAudit
 
Methods inherited from interface org.opencrx.kernel.base.cci2.Cloneable
clone_
 
Methods inherited from interface org.opencrx.kernel.base.cci2.Exporter
exportItem, exportItemAdvanced
 
Methods inherited from interface org.opencrx.kernel.base.cci2.Importer
importItem
 
Methods inherited from interface org.opencrx.kernel.base.cci2.Indexed
getIndexEntry, updateIndex
 
Methods inherited from interface org.opencrx.kernel.base.cci2.SecureObject
addOwningGroup, checkPermissions, getAccessLevelBrowse, getAccessLevelDelete, getAccessLevelUpdate, getOwner, getOwningGroup, getOwningUser, removeAllOwningGroup, removeOwningGroup, replaceOwningGroup, setAccessLevel, setAccessLevelBrowse, setAccessLevelDelete, setAccessLevelUpdate, setOwner, setOwningUser, setOwningUser
 
Methods inherited from interface org.opencrx.kernel.generic.cci2.LocalizedFieldContainer
getLocalizedField
 
Methods inherited from interface org.openmdx.base.cci2.Creatable
getCreatedAt, getCreatedBy
 
Methods inherited from interface org.openmdx.base.cci2.ExtentCapable
getIdentity
 
Methods inherited from interface org.openmdx.base.cci2.Modifiable
getModifiedAt, getModifiedBy
 

Constructor Detail

AssociationEnd

public AssociationEnd()
Constructor

Method Detail

getMultiplicity

public short getMultiplicity()
Retrieves the value for the attribute multiplicity.

Multiplicity defines constraints on sets of instances. Each instance of the Classifier defined by the opposite AssociationEnd's type defines a set which this multiplicity attribute constrains. Given one of those instances, x, the set is defined as the instances connected by LinkEnds of this AssociationEnd to that instance x. In its use is describing AssociationEnds, isUnique has been constrained to be true, as a simplification. This constraint means that the same two instances cannot participate in more than one Link while participating under the same AssociationEnd. Normally, two instances cannot be linked by more than one Link of an Association at all. But when the AssociationEnd types allow the two instances switch ends, they can form a second Link without violating the isUnique constraint.

Specified by:
getMultiplicity in interface AssociationEnd
Returns:
The non-null value for attribute multiplicity.

setMultiplicity

public void setMultiplicity(short multiplicity)
Sets a new value for the attribute multiplicity.

Multiplicity defines constraints on sets of instances. Each instance of the Classifier defined by the opposite AssociationEnd's type defines a set which this multiplicity attribute constrains. Given one of those instances, x, the set is defined as the instances connected by LinkEnds of this AssociationEnd to that instance x. In its use is describing AssociationEnds, isUnique has been constrained to be true, as a simplification. This constraint means that the same two instances cannot participate in more than one Link while participating under the same AssociationEnd. Normally, two instances cannot be linked by more than one Link of an Association at all. But when the AssociationEnd types allow the two instances switch ends, they can form a second Link without violating the isUnique constraint.

Specified by:
setMultiplicity in interface AssociationEnd
Parameters:
multiplicity - The non-null new value for attribute multiplicity.

getType

public Classifier getType()
Retrieves the value for the reference type.

Specified by:
getType in interface TypedElement
Returns:
The non-null value for this reference.

getType_Id

public String getType_Id()

setType

public void setType(Classifier type)
Sets a new value for the reference type.

Specified by:
setType in interface TypedElement
Parameters:
type - The new non-null value for this reference.

setType_Id

public void setType_Id(String type)

getQualifierType

public <T extends Classifier> List<T> getQualifierType()
Retrieves the Collection of objects referenced by qualifierType.

Specified by:
getQualifierType in interface AssociationEnd
Returns:
The Collection of referenced objects.

getQualifierType_Id

public List<String> getQualifierType_Id()

getAggregation

public short getAggregation()
Retrieves the value for the attribute aggregation.

Certain associations define aggregations - directed associations with additional semantics. When an AssociationEnd is defined as composite or shared, the instance at 'this' end of a Link is the composite or aggregate, and the instance at the 'other' end is the component or subordinate..

Specified by:
getAggregation in interface AssociationEnd
Returns:
The non-null value for attribute aggregation.

setAggregation

public void setAggregation(short aggregation)
Sets a new value for the attribute aggregation.

Certain associations define aggregations - directed associations with additional semantics. When an AssociationEnd is defined as composite or shared, the instance at 'this' end of a Link is the composite or aggregate, and the instance at the 'other' end is the component or subordinate..

Specified by:
setAggregation in interface AssociationEnd
Parameters:
aggregation - The non-null new value for attribute aggregation.

getQualifierName

public List<String> getQualifierName()
Retrieves a list containing all the elements for the attribute qualifierName.

Specified by:
getQualifierName in interface AssociationEnd
Returns:
A list containing all elements for this attribute.

setQualifierName

public void setQualifierName(String... qualifierName)
Clears qualifierName and adds the given value(s).

This method is equivalent to

   list.clear();
   for(java.lang.String e : attributeName){
     list.add(e);
   }
 

Specified by:
setQualifierName in interface AssociationEnd
Parameters:
qualifierName - value(s) to be added to qualifierName

isChangeable

public boolean isChangeable()
Retrieves the value for the attribute isChangeable.

The isChangeable attribute restricts the capability to perform actions that would modify sets of instances corresponding to this AssociationEnd (the same sets to which multiplicity is applied). Specifically, the set may be created when the instance defining the set - the instance at the opposite end of the Links - is created. This attribute does not make the set immutable. Instead, it affects the generation of operations in Model Elaboration which would allow modification of the set. For IDL generation, the only operation that allows the set to be modified would be one or more factory operations that create the instance and create the set. The modeler is free to define specific operations that allow modification of the set. Note that defining this AssociationEnd with isChangeable equals false places restrictions on the changeability of the other AssociationEnd, due to their interdependence.

Specified by:
isChangeable in interface AssociationEnd
Returns:
The non-null value for attribute isChangeable.

setChangeable

public void setChangeable(boolean isChangeable)
Sets a new value for the attribute isChangeable.

The isChangeable attribute restricts the capability to perform actions that would modify sets of instances corresponding to this AssociationEnd (the same sets to which multiplicity is applied). Specifically, the set may be created when the instance defining the set - the instance at the opposite end of the Links - is created. This attribute does not make the set immutable. Instead, it affects the generation of operations in Model Elaboration which would allow modification of the set. For IDL generation, the only operation that allows the set to be modified would be one or more factory operations that create the instance and create the set. The modeler is free to define specific operations that allow modification of the set. Note that defining this AssociationEnd with isChangeable equals false places restrictions on the changeability of the other AssociationEnd, due to their interdependence.

Specified by:
setChangeable in interface AssociationEnd
Parameters:
isChangeable - The non-null new value for attribute isChangeable.

getUpperBound

public final Integer getUpperBound()
Retrieves the possibly null value for the optional attribute upperBound.

Specified by:
getUpperBound in interface AssociationEnd
Returns:
The possibly null value for attribute upperBound.

setUpperBound

public void setUpperBound(Integer upperBound)
Sets a new value for the attribute upperBound.

Specified by:
setUpperBound in interface AssociationEnd
Parameters:
upperBound - The possibly null new value for attribute upperBound.

isNavigable

public boolean isNavigable()
Retrieves the value for the attribute isNavigable.

The isNavigable attribute determines whether or not the AssociationEnd supports link 'navigation'. This has two implications:

Specified by:
isNavigable in interface AssociationEnd
Returns:
The non-null value for attribute isNavigable.

setNavigable

public void setNavigable(boolean isNavigable)
Sets a new value for the attribute isNavigable.

The isNavigable attribute determines whether or not the AssociationEnd supports link 'navigation'. This has two implications:

Specified by:
setNavigable in interface AssociationEnd
Parameters:
isNavigable - The non-null new value for attribute isNavigable.


This software is published under the BSD license. Copyright © 2003-2013, CRIXP AG, Switzerland, All rights reserved. Use is subject to license terms.