Interface AssociationLink

All Superinterfaces:
SchemaNodeExplicitRelationship
All Known Subinterfaces:
AssociationLinkByLinkTable, AssociationLinkByTableRefInverse, AssociationLinkByXPathLink

public interface AssociationLink extends SchemaNodeExplicitRelationship
This interface contains the information for an association link (osd:association property).
Since:
5.5.0
See Also:
  • Method Details

    • getAssociationResult

      RequestResult getAssociationResult(Adaptation aRecord)
      Returns the result of the association link, in the context of the specified record.
      See Also:
    • getTargetTable

      AdaptationTable getTargetTable(Adaptation aRecordOrDataSet)
      Returns the target table of this association.
    • getDataSetReference

      AdaptationReference getDataSetReference()
      Returns the reference of the dataset of this association, if an external dataset is defined in the data model (property dataSet); otherwise returns null.
    • getDataSpaceReference

      HomeKey getDataSpaceReference()
      Returns the reference of the dataspace of this association, if an external dataset in another dataspace is defined by the data model (property dataSpace); otherwise returns null.
    • getMinOccurs

      int getMinOccurs()
      Returns the value of minOccurs/value.
      Since:
      5.5.1
    • getMaxOccurs

      int getMaxOccurs()
      Returns the value of maxOccurs/value. Returns -1 if this property is not defined.
      Since:
      5.5.1
    • getXPathFilter

      String getXPathFilter()
      Returns the XPath expression (property xpathFilter) defined to filter the result of this association.
      Since:
      5.5.1
    • getConstraintPredicate

      String getConstraintPredicate()
      Returns the XPath expression (property constraint/xpath) defined to restrict associated records.
      Since:
      5.5.1
    • isLinkTable

      boolean isLinkTable()
      Returns true if this association is over a link table.
      Since:
      5.5.1
      See Also:
    • isTableRefInverse

      boolean isTableRefInverse()
      Returns true if this association is the inverse of a foreign key.
      Since:
      5.5.1
      See Also:
    • isXPathLink

      boolean isXPathLink()
      Returns true if this association is over an XPath predicate.
      Since:
      5.8.1
      See Also:
    • getRecordFormFactoryClass

      Class<?> getRecordFormFactoryClass()
      Returns the specific UserServiceAssociationRecordFormFactory class defined on this association node (property recordForm osd:class) or null if no UserServiceAssociationRecordFormFactory class has been defined.
      Since:
      5.9.0
    • isConsistent

      boolean isConsistent(Adaptation aRecordOrDataSet)
      Returns true if this association is consistent with the specified record or dataset.

      An association element is inconsistent with a given record or dataset when its definition is based on a reverse foreign key or a link table and the foreign key to the source table does not target the specified dataset.

      Since:
      6.0.8