Class ChildAssociationRef
java.lang.Object
org.alfresco.service.cmr.repository.ChildAssociationRef
- All Implemented Interfaces:
Serializable
,Comparable<ChildAssociationRef>
,EntityRef
@AlfrescoPublicApi
public class ChildAssociationRef
extends Object
implements EntityRef, Comparable<ChildAssociationRef>, Serializable
This class represents a child relationship between two nodes. This
relationship is named.
So it requires the parent node ref, the child node ref and the name of the child within the particular parent.
This combination is not a unique identifier for the relationship with regard to structure. In use this does not matter as we have no concept of order, particularly in the index.
- Author:
- andyh
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionChildAssociationRef
(String childAssocRefStr) ChildAssociationRef
(QName assocTypeQName, NodeRef parentRef, QName childQName, NodeRef childRef) Constructs a non-primary, -1th sibling parent-child association reference.ChildAssociationRef
(QName assocTypeQName, NodeRef parentRef, QName childQName, NodeRef childRef, boolean isPrimary, int nthSibling) Construct a representation of a parent --- name ----> child relationship. -
Method Summary
Modifier and TypeMethodDescriptionint
compareTo
(ChildAssociationRef another) boolean
Compares:assocTypeQName
parentRef
childRef
childQName
int
getQName()
Get the qualified name of the parent-child associationGet the qualified name of the association typeint
hashCode()
boolean
void
setNthSibling
(int nthSibling) Allows post-creation setting of the ordering index.toString()
-
Constructor Details
-
ChildAssociationRef
public ChildAssociationRef(QName assocTypeQName, NodeRef parentRef, QName childQName, NodeRef childRef, boolean isPrimary, int nthSibling) Construct a representation of a parent --- name ----> child relationship.- Parameters:
assocTypeQName
- the type of the associationparentRef
- the parent reference - may be nullchildQName
- the qualified name of the association - may be nullchildRef
- the child node reference. This must not be null.isPrimary
- true if this represents the primary parent-child relationshipnthSibling
- the nth association with the same properties. Usually -1 to be ignored.
-
ChildAssociationRef
public ChildAssociationRef(QName assocTypeQName, NodeRef parentRef, QName childQName, NodeRef childRef) Constructs a non-primary, -1th sibling parent-child association reference. -
ChildAssociationRef
- Parameters:
childAssocRefStr
- a string of the form parentNodeRef|childNodeRef|assocTypeQName|assocQName|isPrimary|nthSibling
-
-
Method Details
-
toString
-
equals
Compares:assocTypeQName
parentRef
childRef
childQName
-
hashCode
public int hashCode() -
compareTo
- Specified by:
compareTo
in interfaceComparable<ChildAssociationRef>
- See Also:
-
getTypeQName
Get the qualified name of the association type- Returns:
- Returns the qualified name of the parent-child association type as defined in the data dictionary. It may be null if this is the imaginary association to the root node.
-
getQName
Get the qualified name of the parent-child association- Returns:
- Returns the qualified name of the parent-child association. It may be null if this is the imaginary association to a root node.
-
getChildRef
- Returns:
- Returns the child node reference - never null
-
getParentRef
- Returns:
- Returns the parent node reference, which may be null if this represents the imaginary reference to the root node
-
isPrimary
public boolean isPrimary()- Returns:
- Returns true if this represents a primary association
-
getNthSibling
public int getNthSibling()- Returns:
- Returns the nth sibling required
-
setNthSibling
public void setNthSibling(int nthSibling) Allows post-creation setting of the ordering index. This is a helper so that sorted sets and lists can be easily sorted.This index is in no way absolute and should change depending on the results that appear around this instance. Therefore, the sibling number cannot be used to construct, say, sibling number 5. Sibling number 5 will exist only in results where there are siblings 1 - 4.
- Parameters:
nthSibling
- the sibling index
-