Interface ReverseRelationshipInterDataset
-
- All Superinterfaces:
Relationship,ReverseRelationship
public interface ReverseRelationshipInterDataset extends ReverseRelationship
Represents a reverse relationship in a resolved data model where the node that defines the foreign key constraint, the selection link or the association link is in another dataset.- Since:
- 5.7.1
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Iterable<Adaptation>getOwnerDatasets(Adaptation aReferencedRecordOrDataset)Returns the datasets that are an instance of the data model containing the node that defines the corresponding foreign key constraint, selection link or association link.ReverseRelationshipResultsInterDatasetgetReferringRecords(Adaptation aReferencedRecord)Returns the records in the repository that refers to the specified record through the corresponding foreign key constraint, selection link or association link.-
Methods inherited from interface com.orchestranetworks.schema.relationships.Relationship
isExplicit
-
Methods inherited from interface com.orchestranetworks.schema.relationships.ReverseRelationship
getExplicitRelationship, getReferringTableNode, getTableNode, isIntraDataset
-
-
-
-
Method Detail
-
getOwnerDatasets
Iterable<Adaptation> getOwnerDatasets(Adaptation aReferencedRecordOrDataset)
Returns the datasets that are an instance of the data model containing the node that defines the corresponding foreign key constraint, selection link or association link.Permissions are applied if this reverse relationship has been retrieved using a specific
Session. As a consequence, this method returns only the datasets that can be viewed by the end-user associated with the specified session.- Throws:
IllegalArgumentException- if the specifiedAdaptationis null.IllegalArgumentException- if the specified record is not in a dataset that is an instance of the data model containing the target table node of the associated relationship.IllegalArgumentException- if the specified record is not in the table that is targeted by the corresponding relationship.IllegalArgumentException- if the specified dataset is not an instance of the data model containing the target table node of the associated relationship.- See Also:
SchemaNode.getRelationships(Adaptation, com.orchestranetworks.service.Session),SchemaNodeRelationships.getInterDatasetReverseRelationships()
-
getReferringRecords
ReverseRelationshipResultsInterDataset getReferringRecords(Adaptation aReferencedRecord) throws QueryPermissionException
Returns the records in the repository that refers to the specified record through the corresponding foreign key constraint, selection link or association link.Permissions are applied if this reverse relationship has been retrieved using a specific
Session. As a consequence:- the returned records will be filtered using the access rules on records if any;
- a
QueryPermissionExceptionwill be thrown on execution if at least one forbidden node is used in the request.
- Throws:
IllegalArgumentException- if the specifiedAdaptationis null.IllegalArgumentException- if the specifiedAdaptationis not a record.IllegalArgumentException- if the specified record is not in a dataset that is an instance of the data model containing the target table node of the associated relationship.IllegalArgumentException- if the specified record is not in the table that is targeted by the corresponding relationship.QueryPermissionException- if a session is provided and at least one forbidden node is used in the request.- See Also:
SchemaNode.getRelationships(Adaptation, com.orchestranetworks.service.Session),SchemaNodeRelationships.getInterDatasetReverseRelationships()
-
-