Package com.collibra.dgc.core.api.model.meta.type

# Interface ComplexRelationLegType

All Superinterfaces:
  `Entity`, `Resource`, `Serializable`

public interface ComplexRelationLegType extends Resource
Represents a complex relation leg type.

Complex relation leg type represents asset type related within complex relation type with given role and co-role

- ## Method Summary

  Modifier and Type
  Method
  Description
  `NamedResourceReference`
  `getAssetType()`
  Returns the reference to the asset type contained by this leg type.
  `String`
  `getCoRole()`
  Returns the name of the co-role for this complex relation leg type.
  `Integer`
  `getMaximumOccurrences()`
  Returns how many times the assigned leg may be added to the resource.
  `int`
  `getMinimumOccurrences()`
  Returns how many times at least the assigned leg must be added to the resource.
  `UUID`
  `getRelationTypeId()`
  Complex relation is built from relations so for complex relation leg type there is always relation type created.
  `String`
  `getRelationTypePublicId()`
  Returns the public id of the relation type that is created for this leg type.
  `String`
  `getRole()`
  Returns the name of the role for this complex relation leg type.

  ### Methods inherited from interface Entity

  `getId, setId`

  ### Methods inherited from interface Resource

  `getCreatedBy, getCreatedOn, getLastModifiedBy, getLastModifiedOn, getResourceType, isSystem`

- ## Method Details

  - ### getMinimumOccurrences

    int getMinimumOccurrences()
    Returns how many times at least the assigned leg must be added to the resource. Zero means no restriction.
    Returns:
      the minimum number of occurrences of this leg type within complex relation

  - ### getMaximumOccurrences

    Integer getMaximumOccurrences()
    Returns how many times the assigned leg may be added to the resource. Null means no restriction.
    Returns:
      the maximum number of occurrences of this leg type within complex relation

  - ### getAssetType

    NamedResourceReference getAssetType()
    Returns the reference to the asset type contained by this leg type. Only asset with asset type equal to or inherited from this asset type can be contained with this leg type.
    Returns:
      the reference to the asset type contained by this leg type

  - ### getRole

    String getRole()
    Returns the name of the role for this complex relation leg type.
    Returns:
      the name of the role for this complex relation leg type

  - ### getCoRole

    String getCoRole()
    Returns the name of the co-role for this complex relation leg type.
    Returns:
      the name of the co-role for this complex relation leg type

  - ### getRelationTypeId

    UUID getRelationTypeId()
    Complex relation is built from relations so for complex relation leg type there is always relation type created.
    Returns:
      id of the relation type that is created for the leg type.

  - ### getRelationTypePublicId

    String getRelationTypePublicId()
    Returns the public id of the relation type that is created for this leg type.
    Returns:
      the public id of the relation type