All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.opencrx.kernel.model1.cci2.AssociationEnd Maven / Gradle / Ivy

The newest version!
// ----------------------------------------------------------------------------
// Instance/Begin
// ----------------------------------------------------------------------------
package org.opencrx.kernel.model1.cci2;

/**
 * Class {@code 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. * */ @javax.annotation.Generated( value = "org.openmdx.application.mof.mapping.java.InstanceMapper", date = "2023-10-28T12:15:35.399978770Z", comments = "Generated by openMDX 2.18.8 - DO NOT CHANGE MANUALLY" ) public interface AssociationEnd extends org.opencrx.kernel.model1.cci2.TypedElement{ // ---------------------------------------------------------------------------- // Instance/AttributeGet1_1 // ---------------------------------------------------------------------------- /** * Retrieves the value for the attribute {@code 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.. * @return The non-null value for attribute {@code aggregation}. */ public short getAggregation( ); // ---------------------------------------------------------------------------- // Instance/AttributeSet1_1 // ---------------------------------------------------------------------------- /** * Sets a new value for the attribute {@code 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.. * @param aggregation The non-{@code null} new value for attribute {@code aggregation}. */ public void setAggregation( short aggregation ); // ---------------------------------------------------------------------------- // Instance/AttributeGet1_1 // ---------------------------------------------------------------------------- /** * Retrieves the value for the attribute {@code 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. * * @return The non-null value for attribute {@code isChangeable}. */ public boolean isChangeable( ); // ---------------------------------------------------------------------------- // Instance/AttributeSet1_1 // ---------------------------------------------------------------------------- /** * Sets a new value for the attribute {@code 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. * * @param isChangeable The non-{@code null} new value for attribute {@code isChangeable}. */ public void setChangeable( boolean isChangeable ); // ---------------------------------------------------------------------------- // Instance/AttributeGet1_1 // ---------------------------------------------------------------------------- /** * Retrieves the value for the attribute {@code isNavigable}. *

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

    *
  • A Class defined with an appropriate Reference supports navigation of links from one Class instance to another. If isNavigable is false for an AssociationEnd, no such References may be created.
  • *
  • Setting isNavigable to false also suppress a mapping’s mechanisms for indexing links * based on this AssociationEnd.
  • *
* * @return The non-null value for attribute {@code isNavigable}. */ public boolean isNavigable( ); // ---------------------------------------------------------------------------- // Instance/AttributeSet1_1 // ---------------------------------------------------------------------------- /** * Sets a new value for the attribute {@code isNavigable}. *

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

    *
  • A Class defined with an appropriate Reference supports navigation of links from one Class instance to another. If isNavigable is false for an AssociationEnd, no such References may be created.
  • *
  • Setting isNavigable to false also suppress a mapping’s mechanisms for indexing links * based on this AssociationEnd.
  • *
* * @param isNavigable The non-{@code null} new value for attribute {@code isNavigable}. */ public void setNavigable( boolean isNavigable ); // ---------------------------------------------------------------------------- // Instance/AttributeGet1_1 // ---------------------------------------------------------------------------- /** * Retrieves the value for the attribute {@code 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. * * @return The non-null value for attribute {@code multiplicity}. */ public short getMultiplicity( ); // ---------------------------------------------------------------------------- // Instance/AttributeSet1_1 // ---------------------------------------------------------------------------- /** * Sets a new value for the attribute {@code 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. * * @param multiplicity The non-{@code null} new value for attribute {@code multiplicity}. */ public void setMultiplicity( short multiplicity ); // ---------------------------------------------------------------------------- // Instance/AttributeGetList // ---------------------------------------------------------------------------- /** * Retrieves a list containing all the elements for the attribute {@code qualifierName}. * @return A list containing all elements for this attribute. */ public java.util.List getQualifierName( ); // ---------------------------------------------------------------------------- // Instance/AttributeSetList // ---------------------------------------------------------------------------- /** * Clears {@code qualifierName} and adds the given value(s). *

* This method is equivalent to

   *   list.clear();
   *   for(java.lang.String e : qualifierName){
   *     list.add(e);
   *   }
   * 
* @param qualifierName value(s) to be added to {@code qualifierName} */ public void setQualifierName( java.lang.String... qualifierName ); // ---------------------------------------------------------------------------- // Instance/ReferenceGet0_nNoQuery // ---------------------------------------------------------------------------- /** * Retrieves the {@code Collection} of objects referenced by {@code qualifierType}. * @return The {@code Collection} of referenced objects. */ public java.util.List getQualifierType( ); // ---------------------------------------------------------------------------- // Instance/AttributeGet0_1 // ---------------------------------------------------------------------------- /** * Retrieves the possibly null value for the optional attribute {@code upperBound}. * @return The possibly null value for attribute {@code upperBound}. */ public java.lang.Integer getUpperBound( ); // ---------------------------------------------------------------------------- // Instance/AttributeSet0_1 // ---------------------------------------------------------------------------- /** * Sets a new value for the attribute {@code upperBound}. * @param upperBound The possibly null new value for attribute {@code upperBound}. */ public void setUpperBound( java.lang.Integer upperBound ); // ---------------------------------------------------------------------------- // Instance/End // ---------------------------------------------------------------------------- }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy