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:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ChildAssociationRef(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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(ChildAssociationRef another)
boolean
equals(Object o)
NodeRef
getChildRef()
int
getNthSibling()
NodeRef
getParentRef()
QName
getQName()
Get the qualified name of the parent-child associationQName
getTypeQName()
Get the qualified name of the association typeint
hashCode()
boolean
isPrimary()
void
setNthSibling(int nthSibling)
Allows post-creation setting of the ordering index.String
toString()
-
-
-
Constructor Detail
-
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
public ChildAssociationRef(String childAssocRefStr)
- Parameters:
childAssocRefStr
- a string of the form parentNodeRef|childNodeRef|assocTypeQName|assocQName|isPrimary|nthSibling
-
-
Method Detail
-
toString
public String toString()
-
equals
public boolean equals(Object o)
Compares:
-
compareTo
public int compareTo(ChildAssociationRef another)
- Specified by:
compareTo
in interfaceComparable<ChildAssociationRef>
- See Also:
setNthSibling(int)
-
getTypeQName
public QName 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
public QName 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
public NodeRef getChildRef()
- Returns:
- Returns the child node reference - never null
-
getParentRef
public NodeRef 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
-
-